From 52ea328589f08585046bd519e4c57e5dce24e1dd Mon Sep 17 00:00:00 2001
From: zongzhibin <zongzhibin@weben-smart.com>
Date: 周六, 23 11月 2024 09:49:36 +0800
Subject: [PATCH] Merge branch 'master' of http://222.71.245.114:9086/r/LA24030-LuLI_PackageLine
---
CC/iWareCommon/BusinessHelper/BusinessHelper.cs | 2
LA24030_LuLiPackageLine_Web/src/api/main/WmsStockQuan/wmsStockQuan.ts | 78 ++
SDA/iWareSda/Devices/4-Station/StationService/StationService.cs | 8
SDA/iWareSda/Devices/4-Station/StationService/IStationService.cs | 4
CC/iWareCC_ASRS/ThreadService/02_BZ39工位(补板后工位)/DataProcess_RobotBuffer_ModeChange.cs | 95 --
CC/iWareCC_ASRS/ThreadService/01_BZ01工位(清灰,洗板后工位)/DataProcess_BZ01.cs | 102 +++
LA24030_LuLiPackageLine_Wms/Admin.NET.Application/Service/WmsBase/WmsBasePlace/WmsBasePlaceService.cs | 4
LA24030_LuLiPackageLine_Wms/Admin.NET.Application/Service/WmsStockQuan/WmsStockQuan/WmsStockQuanService.cs | 237 +++++++
CC/iWareCC_ASRS/FormCC.cs | 6
CC/iWareCC_ASRS/ThreadService/02_BZ39工位(补板后工位)/Inbound/2、DataProcess_RobotBuffer_FinishTask.cs | 21
SDA/iWareSda/Devices/4-Station/StationModel/DB/RgvComm.cs | 13
CC/iWareCC_ASRS/Connected Services/StationService/item2.xsd | 2
SDA/iWareSda/Devices/4-Station/StationModel/Station_CacheEntity.cs | 12
CC/iWareCC_ASRS/ThreadService/02_BZ39工位(补板后工位)/Inbound/1、DataProcess_BZ39.cs | 18
LA24030_LuLiPackageLine_Wms/Admin.NET.Application/Service/WmsStockQuan/WmsStockQuan/Dto/WmsStockQuanInput.cs | 383 +++++++++++
LA24030_LuLiPackageLine_Web/src/views/main/WmsStockQuan/wmsStockQuan/component/editDialog.vue | 297 +++++++++
CC/iWareCC_ASRS/Connected Services/StationService/item3.xsd | 4
CC/iWareCC_ASRS/Connected Services/StationService/Reference.cs | 62 +
SDA/iWareSda/Devices/4-Station/StationModel/StationEntity.cs | 32
CC/iWareCC_ASRS/ThreadService/02_BZ39工位(补板后工位)/Outbound/2、DataProcess_RobotBuffer_IssueOutboundTask.cs | 14
LA24030_LuLiPackageLine_Web/src/views/main/WmsStockQuan/wmsStockQuan/index.vue | 387 +++++++++++
CC/iWareCC_ASRS/ThreadService/02_BZ39工位(补板后工位)/Outbound/3、DataProcess_RobotBuffer_FinishTaskForOutbound.cs | 33
LA24030_LuLiPackageLine_Wms/Admin.NET.Application/Service/WmsStockQuan/WmsStockQuan/Dto/WmsStockQuanOutput.cs | 150 ++++
23 files changed, 1,828 insertions(+), 136 deletions(-)
diff --git a/CC/iWareCC_ASRS/Connected Services/StationService/Reference.cs b/CC/iWareCC_ASRS/Connected Services/StationService/Reference.cs
index 58620f9..5a6b0be 100644
--- a/CC/iWareCC_ASRS/Connected Services/StationService/Reference.cs
+++ b/CC/iWareCC_ASRS/Connected Services/StationService/Reference.cs
@@ -200,6 +200,9 @@
private string R_InboundNumberField;
[System.Runtime.Serialization.OptionalFieldAttribute()]
+ private short R_Inbound_TaskIDField;
+
+ [System.Runtime.Serialization.OptionalFieldAttribute()]
private short R_ModelField;
[System.Runtime.Serialization.OptionalFieldAttribute()]
@@ -207,6 +210,9 @@
[System.Runtime.Serialization.OptionalFieldAttribute()]
private string R_OutboundNumberField;
+
+ [System.Runtime.Serialization.OptionalFieldAttribute()]
+ private short R_Outbound_TaskIDField;
[System.Runtime.Serialization.OptionalFieldAttribute()]
private string R_ReadCodeResultField;
@@ -315,6 +321,19 @@
}
[System.Runtime.Serialization.DataMemberAttribute()]
+ public short R_Inbound_TaskID {
+ get {
+ return this.R_Inbound_TaskIDField;
+ }
+ set {
+ if ((this.R_Inbound_TaskIDField.Equals(value) != true)) {
+ this.R_Inbound_TaskIDField = value;
+ this.RaisePropertyChanged("R_Inbound_TaskID");
+ }
+ }
+ }
+
+ [System.Runtime.Serialization.DataMemberAttribute()]
public short R_Model {
get {
return this.R_ModelField;
@@ -349,6 +368,19 @@
if ((object.ReferenceEquals(this.R_OutboundNumberField, value) != true)) {
this.R_OutboundNumberField = value;
this.RaisePropertyChanged("R_OutboundNumber");
+ }
+ }
+ }
+
+ [System.Runtime.Serialization.DataMemberAttribute()]
+ public short R_Outbound_TaskID {
+ get {
+ return this.R_Outbound_TaskIDField;
+ }
+ set {
+ if ((this.R_Outbound_TaskIDField.Equals(value) != true)) {
+ this.R_Outbound_TaskIDField = value;
+ this.RaisePropertyChanged("R_Outbound_TaskID");
}
}
}
@@ -481,7 +513,7 @@
private bool W_IsRotateField;
[System.Runtime.Serialization.OptionalFieldAttribute()]
- private string W_KittingInfoField;
+ private short W_KittingInfoField;
[System.Runtime.Serialization.OptionalFieldAttribute()]
private short W_LengthField;
@@ -651,12 +683,12 @@
}
[System.Runtime.Serialization.DataMemberAttribute()]
- public string W_KittingInfo {
+ public short W_KittingInfo {
get {
return this.W_KittingInfoField;
}
set {
- if ((object.ReferenceEquals(this.W_KittingInfoField, value) != true)) {
+ if ((this.W_KittingInfoField.Equals(value) != true)) {
this.W_KittingInfoField = value;
this.RaisePropertyChanged("W_KittingInfo");
}
@@ -1468,16 +1500,16 @@
System.Threading.Tasks.Task<iWareCC.StationService.SdaResEntity> WriteQiTaoInfoAsync(int deviceId, string stationCode, bool value);
[System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IStationService/InboundFinishConfirm", ReplyAction="http://tempuri.org/IStationService/InboundFinishConfirmResponse")]
- iWareCC.StationService.SdaResEntity InboundFinishConfirm(int deviceId, string stationCode);
+ iWareCC.StationService.SdaResEntity InboundFinishConfirm(int deviceId, bool value, string stationCode);
[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.Threading.Tasks.Task<iWareCC.StationService.SdaResEntity> InboundFinishConfirmAsync(int deviceId, bool value, string stationCode);
[System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IStationService/OutboundFinishConfirm", ReplyAction="http://tempuri.org/IStationService/OutboundFinishConfirmResponse")]
- iWareCC.StationService.SdaResEntity OutboundFinishConfirm(int deviceId, string stationCode);
+ iWareCC.StationService.SdaResEntity OutboundFinishConfirm(int deviceId, bool value, 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.Threading.Tasks.Task<iWareCC.StationService.SdaResEntity> OutboundFinishConfirmAsync(int deviceId, bool value, 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, int inbound_TaskID);
@@ -1617,20 +1649,20 @@
return base.Channel.WriteQiTaoInfoAsync(deviceId, stationCode, value);
}
- public iWareCC.StationService.SdaResEntity InboundFinishConfirm(int deviceId, string stationCode) {
- return base.Channel.InboundFinishConfirm(deviceId, stationCode);
+ public iWareCC.StationService.SdaResEntity InboundFinishConfirm(int deviceId, bool value, string stationCode) {
+ return base.Channel.InboundFinishConfirm(deviceId, value, stationCode);
}
- public System.Threading.Tasks.Task<iWareCC.StationService.SdaResEntity> InboundFinishConfirmAsync(int deviceId, string stationCode) {
- return base.Channel.InboundFinishConfirmAsync(deviceId, stationCode);
+ public System.Threading.Tasks.Task<iWareCC.StationService.SdaResEntity> InboundFinishConfirmAsync(int deviceId, bool value, string stationCode) {
+ return base.Channel.InboundFinishConfirmAsync(deviceId, value, stationCode);
}
- public iWareCC.StationService.SdaResEntity OutboundFinishConfirm(int deviceId, string stationCode) {
- return base.Channel.OutboundFinishConfirm(deviceId, stationCode);
+ public iWareCC.StationService.SdaResEntity OutboundFinishConfirm(int deviceId, bool value, string stationCode) {
+ return base.Channel.OutboundFinishConfirm(deviceId, value, stationCode);
}
- public System.Threading.Tasks.Task<iWareCC.StationService.SdaResEntity> OutboundFinishConfirmAsync(int deviceId, string stationCode) {
- return base.Channel.OutboundFinishConfirmAsync(deviceId, stationCode);
+ public System.Threading.Tasks.Task<iWareCC.StationService.SdaResEntity> OutboundFinishConfirmAsync(int deviceId, bool value, string stationCode) {
+ return base.Channel.OutboundFinishConfirmAsync(deviceId, value, stationCode);
}
public iWareCC.StationService.SdaResEntity WriteInStoreTaskInfo(int deviceId, string stationCode, string toPlaceNo, short length, short width, short height, int inbound_TaskID) {
diff --git a/CC/iWareCC_ASRS/Connected Services/StationService/item2.xsd b/CC/iWareCC_ASRS/Connected Services/StationService/item2.xsd
index 0bf77f3..8da0c43 100644
--- a/CC/iWareCC_ASRS/Connected Services/StationService/item2.xsd
+++ b/CC/iWareCC_ASRS/Connected Services/StationService/item2.xsd
@@ -159,6 +159,7 @@
<xs:complexType>
<xs:sequence>
<xs:element minOccurs="0" name="deviceId" type="xs:int" />
+ <xs:element minOccurs="0" name="value" type="xs:boolean" />
<xs:element minOccurs="0" name="stationCode" nillable="true" type="xs:string" />
</xs:sequence>
</xs:complexType>
@@ -174,6 +175,7 @@
<xs:complexType>
<xs:sequence>
<xs:element minOccurs="0" name="deviceId" type="xs:int" />
+ <xs:element minOccurs="0" name="value" type="xs:boolean" />
<xs:element minOccurs="0" name="stationCode" nillable="true" type="xs:string" />
</xs:sequence>
</xs:complexType>
diff --git a/CC/iWareCC_ASRS/Connected Services/StationService/item3.xsd b/CC/iWareCC_ASRS/Connected Services/StationService/item3.xsd
index b24b7be..6a02b02 100644
--- a/CC/iWareCC_ASRS/Connected Services/StationService/item3.xsd
+++ b/CC/iWareCC_ASRS/Connected Services/StationService/item3.xsd
@@ -14,9 +14,11 @@
<xs:element minOccurs="0" name="R_Destination" type="xs:short" />
<xs:element minOccurs="0" name="R_InboundFinish" type="xs:boolean" />
<xs:element minOccurs="0" name="R_InboundNumber" nillable="true" type="xs:string" />
+ <xs:element minOccurs="0" name="R_Inbound_TaskID" type="xs:short" />
<xs:element minOccurs="0" name="R_Model" type="xs:short" />
<xs:element minOccurs="0" name="R_OutboundFinish" type="xs:boolean" />
<xs:element minOccurs="0" name="R_OutboundNumber" nillable="true" type="xs:string" />
+ <xs:element minOccurs="0" name="R_Outbound_TaskID" type="xs:short" />
<xs:element minOccurs="0" name="R_ReadCodeResult" nillable="true" type="xs:string" />
<xs:element minOccurs="0" name="R_ReqParseData" type="xs:boolean" />
<xs:element minOccurs="0" name="R_Shape" type="xs:short" />
@@ -44,7 +46,7 @@
<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_KittingInfo" type="xs:short" />
<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" />
diff --git a/CC/iWareCC_ASRS/FormCC.cs b/CC/iWareCC_ASRS/FormCC.cs
index c45661a..dae98d6 100644
--- a/CC/iWareCC_ASRS/FormCC.cs
+++ b/CC/iWareCC_ASRS/FormCC.cs
@@ -31,6 +31,12 @@
{
public partial class FormCC : Form
{
+
+ /// <summary>
+ /// 鍏ㄥ眬鈥旀槸鍚﹀彲浠ヨ繍琛屾墽琛屽嚭搴撴ā寮�
+ /// </summary>
+ public static bool IsAllowRunOutMode = false;
+
/// <summary>
/// 1鍙峰爢鍨涙満鍏ュ簱鍙f壂鐮佸己鍒堕獙璇侀�氳繃
/// </summary>
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 b99875d..35bfcd7 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"
@@ -9,6 +9,8 @@
using System;
using System.Collections.Generic;
using System.Linq;
+using System.Net.NetworkInformation;
+using System.Reflection.Emit;
using System.ServiceModel.Configuration;
using System.Text;
using System.Threading;
@@ -37,6 +39,12 @@
{
if (SystemValue.isAllowRuning_DataProcess_BZ01 && SystemValue.isStartedModel)
{
+ if (FormCC.IsAllowRunOutMode == true)
+ {
+ SystemWarningMsg._lbl_alert_DataProcess_BZ01 = $"姝e湪骞插嚭搴撴ā寮忥紝姝ゆ柟娉曟殏鍋溿�傘�� ";
+ continue;
+ }
+
var rgvLocation = StationLocationEnum.BZ01.ToString();
/*
* 1銆佷粠鏁版嵁搴撲腑鍒ゆ柇鏄惁榻愬
@@ -61,6 +69,14 @@
SystemWarningMsg._lbl_alert_DataProcess_BZ01 = $"{rgvLocation.ToString()},鏍规嵁UPI:{upiCode}娌℃湁鎵惧埌瀵硅薄 ";
continue;
}
+
+ var isAllow = IsAllloRunOutTaskMode(wmsDB, upiObj);
+ if (isAllow)
+ {
+ SystemWarningMsg._lbl_alert_DataProcess_BZ01 = $"{rgvLocation.ToString()},鍒ゆ柇瑕佹墽琛屽嚭搴撴ā寮忎簡锛屾鏂规硶鏆傚仠銆傘�� ";
+ continue;
+ }
+
//鏌ヨ鏄惁榻愬寘
var allList = wmsDB.mes_batchOrderUPI_new.Where(x => x.PackageCode == upiObj.PackageCode).ToList();
var isQiTaoList = allList.Where(x => x.AreaCode == (int)AreaCodeEnum.寰呯紦瀛樺垎鎷e尯
@@ -117,8 +133,13 @@
wmsDB.SaveChanges();
}
-
-
+ }
+ else
+ {
+ using (WmsDBModel wmsDB = new WmsDBModel())
+ {
+ var isAllow = IsAllloRunOutTaskMode(wmsDB, null);
+ }
}
}
}
@@ -130,5 +151,82 @@
}
}
+
+ /// <summary>
+ /// 鏄惁鍙互鎵ц鍑哄簱妯″紡
+ /// </summary>
+ /// <param name="wmsDB"></param>
+ /// <param name="curUpiObj"></param>
+ /// <returns></returns>
+ private static bool IsAllloRunOutTaskMode(WmsDBModel wmsDB, mes_batchOrderUPI_new curUpiObj)
+ {
+ //棣栧厛鏌ヨ鏁版嵁搴撲腑鏄惁鏈� 瑕佸嚭搴撶殑鏁版嵁
+ var isExistOutTaskForNewCreated = wmsDB.wms_rbline_task.Where(x => x.RbTaskType == (int)RbTaskTypeEnum.鍑哄簱浠诲姟
+ && x.TaskStatus == (int)TaskStatusEnum.鏂板缓
+ ).Count();
+ if (isExistOutTaskForNewCreated == 0)
+ {
+ FormCC.IsAllowRunOutMode = false;
+ return false;//涓嶈兘鎵ц 鍑哄簱妯″紡
+ }
+
+ var rbRunMode = wmsDB.wms_rbline_runmode.FirstOrDefault();
+ var lastUpi = rbRunMode.UPI;
+ var lastPackageCode = rbRunMode.PackageCode;
+
+ if (curUpiObj == null)
+ {//琛ㄧず姝ゆ椂鏃犳柊鏉胯繃鏉�
+ if (!string.IsNullOrEmpty(lastUpi))
+ {
+ var lastObj = wmsDB.mes_batchOrderUPI_new.Where(x => x.UPI == lastUpi).FirstOrDefault();
+ if (lastObj.UpiStatus == (int)UpiStatusEnum.涓嶉綈鍖� || lastObj.UpiStatus == (int)UpiStatusEnum.鍒濆)
+ {//琛ㄧず鏈�鍚庤繃鍘荤殑鏉挎槸涓嶉綈鍖呯殑鏉�
+ //鍙互杩愯鎵ц 鍑哄簱妯″紡
+ }
+ else
+ {//琛ㄧず鏈�鍚庤繃鍘荤殑鏉挎槸榻愬寘鐨勬澘
+ //瑕佺户缁垽鏂悗闈� 寰呭垎鎷e尯鍩熻繕瀛樺湪鐩稿悓鍖呯殑鏉挎暟鎹悧
+ var isExistSamePackageCode = wmsDB.mes_batchOrderUPI_new.Where(x => x.PackageCode == lastPackageCode
+ && x.AreaCode == (int)AreaCodeEnum.寰呯紦瀛樺垎鎷e尯).Count();
+ if (isExistSamePackageCode > 0)
+ {
+ FormCC.IsAllowRunOutMode = false;
+ return false;//涓嶈兘鎵ц 鍑哄簱妯″紡
+ }
+ else
+ {
+ //鍙互杩愯鎵ц 鍑哄簱妯″紡
+ }
+ }
+ }
+ else
+ {
+ //鍙互杩愯鎵ц 鍑哄簱妯″紡
+ }
+ }
+ else
+ {//琛ㄧず姝ゆ椂鏈夋柊鏉胯繃鏉�
+ if (!string.IsNullOrEmpty(lastUpi))
+ {
+ if (lastPackageCode == curUpiObj.PackageCode)
+ {
+ FormCC.IsAllowRunOutMode = false;
+ return false;//涓嶈兘鎵ц 鍑哄簱妯″紡
+ }
+ else
+ {//鏂板寘杩囨潵浜�
+ //鍙互杩愯鎵ц 鍑哄簱妯″紡
+ }
+ }
+ else
+ {
+ //鍙互杩愯鎵ц 鍑哄簱妯″紡
+ }
+ }
+
+ FormCC.IsAllowRunOutMode = true;
+ return true;
+ }
+
}
}
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"
index 595fc18..97019c4 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/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"
@@ -36,91 +36,36 @@
{
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)
+ if (FormCC.IsAllowRunOutMode)
{
- 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)
+ if (rbRunMode.LineRunMode == (int)RbRunModeEnum.鍑哄簱妯″紡)
{
- 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()}-鏈夆�樺凡涓嬪彂鈥欑殑浠诲姟锛屼笉鑳藉鐞�,姝ゆ寰幆缁撴潫";
+ SystemWarningMsg._lbl_alert_DataProcess_BZ39 = $"宸茬粡鏄嚭搴撴ā寮忎簡,姝ゆ寰幆缁撴潫";
continue;
}
+ rbRunMode.LineRunMode = (int)RbRunModeEnum.鍑哄簱妯″紡;
+ rbRunMode.LineRunModeName = RbRunModeEnum.鍑哄簱妯″紡.ToString();
+ rbRunMode.UpdateTime = DateTime.Now;
+ //鎺ㄩ�佺粰PLC鍒囨崲妯″紡
+ //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}");
+ // }
+ //}
-
- 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();
}
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 4cb7bf2..ae46d74 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"
@@ -110,9 +110,21 @@
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));
+ //棣栧厛鍏堟竻鐞�
+ var res = await client.InboundFinishConfirmAsync((int)EDevice.Station, false, rgvLocation);
+ if (!res.result)
+ {
+ SystemWarningMsg._lbl_alert_DataProcess_BZ39 = $"{rgvLocation.ToString()}-涓嬪彂鍏ュ簱浠诲姟 澶辫触,InboundFinishConfirmAsync 杩斿洖:{res.resMsg}";
+ continue;
+ }
+ else
+ {
+ Log4NetHelper.WriteInfoLog(logType, $"{rgvLocation.ToString()}-涓嬪彂鍏ュ簱浠诲姟 鎴愬姛,InboundFinishConfirmAsync锛屽弬鏁�: 绔欑偣{rgvLocation}");
+ }
+
+ 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}";
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/2\343\200\201DataProcess_RobotBuffer_FinishTask.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/2\343\200\201DataProcess_RobotBuffer_FinishTask.cs"
index 0748d2f..9424fc2 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/2\343\200\201DataProcess_RobotBuffer_FinishTask.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/2\343\200\201DataProcess_RobotBuffer_FinishTask.cs"
@@ -39,11 +39,19 @@
var rgvLocation = StationLocationEnum.BZ39.ToString();
var obj = FormCC.stationView.R_StationForReadCommList.Where(x => x.StationCode == rgvLocation.ToString()).FirstOrDefault();
if (obj.R_InboundFinish)
+ //if (true)//妯℃嫙
{
- var result = obj.R_InboundNumber;
- if (string.IsNullOrEmpty(result))
+ //var result = obj.R_InboundNumber;
+ //if (string.IsNullOrEmpty(result))
+ //{
+ // SystemWarningMsg._lbl_Alert_DataProcess_RobotBuffer_FinishTask = $"{rgvLocation.ToString()}- 鍏ュ簱搴撲綅鍙锋槸绌虹殑,姝ゆ寰幆缁撴潫";
+ // continue;
+ //}
+ //obj.R_Inbound_TaskID = 17797;//妯℃嫙
+ var result2 = obj.R_Inbound_TaskID;
+ if (result2 == 0)
{
- SystemWarningMsg._lbl_Alert_DataProcess_RobotBuffer_FinishTask = $"{rgvLocation.ToString()}- 鍏ュ簱搴撲綅鍙锋槸绌虹殑,姝ゆ寰幆缁撴潫";
+ SystemWarningMsg._lbl_Alert_DataProcess_RobotBuffer_FinishTask = $"{rgvLocation.ToString()}- 鍏ュ簱浠诲姟鍙锋槸绌虹殑,姝ゆ寰幆缁撴潫";
continue;
}
@@ -51,7 +59,8 @@
var qitaoReault = false;
using (WmsDBModel wmsDB = new WmsDBModel())
{
- var task = wmsDB.wms_rbline_task.Where(x => x.PlaceCode == obj.R_InboundNumber
+ var task = wmsDB.wms_rbline_task.Where(x =>
+ x.TaskNo == obj.R_Inbound_TaskID.ToString()
&& x.RbTaskType == (int)RbTaskTypeEnum.鍏ュ簱浠诲姟
&& x.TaskStatus == (int)TaskStatusEnum.宸蹭笅鍙�).FirstOrDefault();
if (task == null)
@@ -73,6 +82,8 @@
Id = Yitter.IdGenerator.YitIdHelper.NextId(),
Upi = upiCode,
PlanNo = task.PlanNo,
+ DetailName = upiObj.DetailName,
+ OrderId = task.OrderId,
CreateTime = DateTime.Now,
CreateUserName = "CC",
InTime = DateTime.Now,
@@ -98,7 +109,7 @@
//缁橮LC鎺ㄩ�佷换鍔″畬鎴愮‘璁や俊鍙�
using (StationServiceClient client = new StationServiceClient())
{
- var res = await client.InboundFinishConfirmAsync((int)EDevice.Station, rgvLocation);
+ var res = await client.InboundFinishConfirmAsync((int)EDevice.Station, true, rgvLocation);
if (!res.result)
{
SystemWarningMsg._lbl_Alert_DataProcess_RobotBuffer_FinishTask = $"{rgvLocation.ToString()}-涓嬪彂鍏ュ簱浠诲姟 澶辫触,InboundFinishConfirmAsync 杩斿洖:{res.resMsg}";
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 b70a353..2a87ab0 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"
@@ -85,7 +85,19 @@
//杩欓噷鏀逛负 涓嬪彂 鍑哄簱浠诲姟
using (StationServiceClient client = new StationServiceClient())
{
- var res = await client.WriteOutStoreTaskInfoAsync((int)EDevice.Station, rgvLocation, doTask.PlaceCode, Convert.ToInt32(doTask.TaskNo));
+ //棣栧厛瑕佹竻鐞�
+ var res = await client.OutboundFinishConfirmAsync((int)EDevice.Station, true, rgvLocation);
+ if (!res.result)
+ {
+ SystemWarningMsg._lbl_Alert_DataProcess_RobotBuffer_FinishTaskForOutbound = $"{rgvLocation.ToString()}-涓嬪彂鍑哄簱浠诲姟 澶辫触,OutboundFinishConfirmAsync 杩斿洖:{res.resMsg}";
+ continue;
+ }
+ else
+ {
+ Log4NetHelper.WriteInfoLog(logType, $"{rgvLocation.ToString()}-涓嬪彂鍑哄簱浠诲姟 鎴愬姛,OutboundFinishConfirmAsync锛屽弬鏁�: 绔欑偣{rgvLocation}");
+ }
+
+ 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}";
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/3\343\200\201DataProcess_RobotBuffer_FinishTaskForOutbound.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/3\343\200\201DataProcess_RobotBuffer_FinishTaskForOutbound.cs"
index 457148f..62d38cd 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/3\343\200\201DataProcess_RobotBuffer_FinishTaskForOutbound.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/3\343\200\201DataProcess_RobotBuffer_FinishTaskForOutbound.cs"
@@ -1,4 +1,5 @@
锘縰sing Admin.NET.Application;
+using iWareCC.StationService;
using iWareCommon.Common.Globle;
using iWareCommon.Utils;
using iWareModel;
@@ -31,17 +32,26 @@
var obj = FormCC.stationView.R_StationForReadCommList.Where(x => x.StationCode == rgvLocation.ToString()).FirstOrDefault();
if (obj.R_OutboundFinish)
{
- var result = obj.R_OutboundNumber;
- if (string.IsNullOrEmpty(result))
+ //var result = obj.R_OutboundNumber;
+ //if (string.IsNullOrEmpty(result))
+ //{
+ // SystemWarningMsg._lbl_Alert_DataProcess_RobotBuffer_FinishTaskForOutbound = $"{rgvLocation.ToString()}- 鍑哄簱搴撲綅鍙锋槸绌虹殑,姝ゆ寰幆缁撴潫";
+ // continue;
+ //}
+
+ var result2 = obj.R_Outbound_TaskID;
+ if (result2 == 0)
{
- SystemWarningMsg._lbl_Alert_DataProcess_RobotBuffer_FinishTaskForOutbound = $"{rgvLocation.ToString()}- 鍑哄簱搴撲綅鍙锋槸绌虹殑,姝ゆ寰幆缁撴潫";
+ SystemWarningMsg._lbl_Alert_DataProcess_RobotBuffer_FinishTaskForOutbound = $"{rgvLocation.ToString()}- 鍑哄簱浠诲姟鍙锋槸绌虹殑,姝ゆ寰幆缁撴潫";
continue;
}
+
using (WmsDBModel wmsDB = new WmsDBModel())
{
- var task = wmsDB.wms_rbline_task.Where(x => x.PlaceCode == obj.R_OutboundNumber
+ var task = wmsDB.wms_rbline_task.Where(x =>
+ x.TaskNo == obj.R_Outbound_TaskID.ToString()
&& x.RbTaskType == (int)RbTaskTypeEnum.鍑哄簱浠诲姟
&& x.TaskStatus == (int)TaskStatusEnum.宸蹭笅鍙�).FirstOrDefault();
if (task == null)
@@ -68,6 +78,21 @@
var place = StationHandler.GetPlaceByPlaceCode(task.PlaceCode, wmsDB);
place.PlaceStatus = (int)PlaceStatusEnum.姝e父;
+ //缁橮LC鎺ㄩ�佷换鍔″畬鎴愮‘璁や俊鍙�
+ using (StationServiceClient client = new StationServiceClient())
+ {
+ var res = await client.OutboundFinishConfirmAsync((int)EDevice.Station, true, rgvLocation);
+ if (!res.result)
+ {
+ SystemWarningMsg._lbl_Alert_DataProcess_RobotBuffer_FinishTaskForOutbound = $"{rgvLocation.ToString()}-涓嬪彂鍑哄簱浠诲姟 澶辫触,OutboundFinishConfirmAsync 杩斿洖:{res.resMsg}";
+ continue;
+ }
+ else
+ {
+ Log4NetHelper.WriteInfoLog(logType, $"{rgvLocation.ToString()}-涓嬪彂鍑哄簱浠诲姟 鎴愬姛,OutboundFinishConfirmAsync锛屽弬鏁�: 绔欑偣{rgvLocation}");
+ }
+ }
+
wmsDB.SaveChanges();
}
}
diff --git a/CC/iWareCommon/BusinessHelper/BusinessHelper.cs b/CC/iWareCommon/BusinessHelper/BusinessHelper.cs
index 81c5dab..33b4856 100644
--- a/CC/iWareCommon/BusinessHelper/BusinessHelper.cs
+++ b/CC/iWareCommon/BusinessHelper/BusinessHelper.cs
@@ -135,7 +135,7 @@
/// <returns></returns>
public static string CreatePlcTaskIdForSrmTask()
{
- int iSeed = 99999;
+ int iSeed = 65534;
//浠�101-9999锛屼负浠�涔堣浠�101寮�濮嬶紝鍥犱负1-100浣滀负鎵嬪姩浠诲姟涓嬪彂銆傘�怑ditBy shaocx,2022-05-10銆�
return new Random(Guid.NewGuid().GetHashCode()).Next(101, iSeed).ToString();
}
diff --git a/LA24030_LuLiPackageLine_Web/src/api/main/WmsStockQuan/wmsStockQuan.ts b/LA24030_LuLiPackageLine_Web/src/api/main/WmsStockQuan/wmsStockQuan.ts
new file mode 100644
index 0000000..a9f7182
--- /dev/null
+++ b/LA24030_LuLiPackageLine_Web/src/api/main/WmsStockQuan/wmsStockQuan.ts
@@ -0,0 +1,78 @@
+锘縤mport request from '/@/utils/request';
+enum Api {
+ AddWmsStockQuan = '/api/wmsStockQuan/add',
+ DeleteWmsStockQuan = '/api/wmsStockQuan/delete',
+ UpdateWmsStockQuan = '/api/wmsStockQuan/update',
+ PageWmsStockQuan = '/api/wmsStockQuan/page',
+ ListWmsStockQuan = '/api/wmsStockQuan/list',
+ DetailWmsStockQuan = '/api/wmsStockQuan/detail',
+ ImportExcelWmsStockQuan = '/api/wmsStockQuan/importExcel',
+ DownloadExcelTemplateWmsStockQuan = '/api/wmsStockQuan/downloadExcelTemplate',
+}
+
+// 澧炲姞搴撳瓨淇℃伅
+export const addWmsStockQuan = (params?: any) =>
+ request({
+ url: Api.AddWmsStockQuan,
+ method: 'post',
+ data: params
+ });
+
+// 鍒犻櫎搴撳瓨淇℃伅
+export const deleteWmsStockQuan = (params?: any) =>
+ request({
+ url: Api.DeleteWmsStockQuan,
+ method: 'post',
+ data: params
+ });
+
+// 缂栬緫搴撳瓨淇℃伅
+export const updateWmsStockQuan = (params?: any) =>
+ request({
+ url: Api.UpdateWmsStockQuan,
+ method: 'post',
+ data: params
+ });
+
+// 瀵煎叆搴撳瓨淇℃伅
+export const importExcelWmsStockQuan = (params?: any) =>
+ request({
+ url: Api.ImportExcelWmsStockQuan,
+ method: 'post',
+ data: params
+ });
+
+// 涓嬭浇瀵煎叆搴撳瓨淇℃伅妯℃澘
+export const downloadExcelTemplateWmsStockQuan = (params?: any) =>
+ request({
+ url: Api.DownloadExcelTemplateWmsStockQuan,
+ method: 'get',
+ data: params,
+ responseType: 'blob'
+ });
+
+
+// 鍒嗛〉鏌ヨ搴撳瓨淇℃伅
+export const pageWmsStockQuan = (params?: any) =>
+ request({
+ url: Api.PageWmsStockQuan,
+ method: 'post',
+ data: params
+ });
+
+// 涓嶅垎椤垫煡璇㈠簱瀛樹俊鎭�
+export const listWmsStockQuan = (params?: any) =>
+ request({
+ url: Api.ListWmsStockQuan,
+ method: 'get',
+ data: params
+ });
+
+// 璇︽儏搴撳瓨淇℃伅
+export const detailWmsStockQuan = (id: any) =>
+ request({
+ url: Api.DetailWmsStockQuan,
+ method: 'get',
+ data: { id }
+ });
+
diff --git a/LA24030_LuLiPackageLine_Web/src/views/main/WmsStockQuan/wmsStockQuan/component/editDialog.vue b/LA24030_LuLiPackageLine_Web/src/views/main/WmsStockQuan/wmsStockQuan/component/editDialog.vue
new file mode 100644
index 0000000..10d339a
--- /dev/null
+++ b/LA24030_LuLiPackageLine_Web/src/views/main/WmsStockQuan/wmsStockQuan/component/editDialog.vue
@@ -0,0 +1,297 @@
+锘�<template>
+ <div class="wmsStockQuan-container">
+ <el-dialog v-model="isShowDialog" :width="800" draggable="" :close-on-click-modal="false">
+ <template #header>
+ <div style="color: #fff">
+ <!--<el-icon size="16" style="margin-right: 3px; display: inline; vertical-align: middle"> <ele-Edit /> </el-icon>-->
+ <span>{{ props.title }}</span>
+ </div>
+ </template>
+ <el-form :model="ruleForm" ref="ruleFormRef" label-width="auto" :rules="rules" v-loading="loading">
+ <el-row :gutter="35">
+ <el-form-item v-show="false">
+ <el-input v-model="ruleForm.id" />
+ </el-form-item>
+ <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20">
+ <el-form-item label="搴撲綅缂栫爜" prop="placeCode">
+ <el-input v-model="ruleForm.placeCode" placeholder="璇疯緭鍏ュ簱浣嶇紪鐮�" maxlength="50" show-word-limit clearable />
+
+ </el-form-item>
+
+ </el-col>
+ <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20">
+ <el-form-item label="杩涘叆鏃堕棿" prop="inTime">
+ <el-date-picker v-model="ruleForm.inTime" type="date" placeholder="杩涘叆鏃堕棿" />
+
+ </el-form-item>
+
+ </el-col>
+ <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20">
+ <el-form-item label="閮ㄤ欢鏉$爜" prop="upi">
+ <el-input v-model="ruleForm.upi" placeholder="璇疯緭鍏ラ儴浠舵潯鐮�" maxlength="100" show-word-limit clearable />
+
+ </el-form-item>
+
+ </el-col>
+ <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20">
+ <el-form-item label="閮ㄤ欢鍚嶇О" prop="detailName">
+ <el-input v-model="ruleForm.detailName" placeholder="璇疯緭鍏ラ儴浠跺悕绉�" maxlength="100" show-word-limit clearable />
+
+ </el-form-item>
+
+ </el-col>
+ <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20">
+ <el-form-item label="鎵规" prop="planNo">
+ <el-input v-model="ruleForm.planNo" placeholder="璇疯緭鍏ユ壒娆�" maxlength="100" show-word-limit clearable />
+
+ </el-form-item>
+
+ </el-col>
+ <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20">
+ <el-form-item label="璁㈠崟鍙�" prop="orderId">
+ <el-input v-model="ruleForm.orderId" placeholder="璇疯緭鍏ヨ鍗曞彿" maxlength="100" show-word-limit clearable />
+
+ </el-form-item>
+
+ </el-col>
+ <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20">
+ <el-form-item label="鍖呰鍙�" prop="packageCode">
+ <el-input v-model="ruleForm.packageCode" placeholder="璇疯緭鍏ュ寘瑁呭彿" maxlength="100" show-word-limit clearable />
+
+ </el-form-item>
+
+ </el-col>
+ <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20">
+ <el-form-item label="闀�" prop="length">
+ <el-input v-model="ruleForm.length" placeholder="璇疯緭鍏ラ暱" maxlength="53" show-word-limit clearable />
+
+ </el-form-item>
+
+ </el-col>
+ <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20">
+ <el-form-item label="瀹�" prop="width">
+ <el-input v-model="ruleForm.width" placeholder="璇疯緭鍏ュ" maxlength="53" show-word-limit clearable />
+
+ </el-form-item>
+
+ </el-col>
+ <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20">
+ <el-form-item label="鍘�" prop="thk">
+ <el-input v-model="ruleForm.thk" placeholder="璇疯緭鍏ュ帤" maxlength="53" show-word-limit clearable />
+
+ </el-form-item>
+
+ </el-col>
+ <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20">
+ <el-form-item label="搴撳瓨鐘舵��" prop="stockStatus">
+ <el-select clearable v-model="ruleForm.stockStatus" placeholder="璇烽�夋嫨搴撳瓨鐘舵��">
+ <el-option v-for="(item,index) in getEnumStockStatusData" :key="index" :value="item.value" :label="`${item.describe}`"></el-option>
+
+ </el-select>
+
+ </el-form-item>
+
+ </el-col>
+ <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20">
+ <el-form-item label="搴撳瓨鐘舵�佸悕绉�" prop="stockStatusName">
+ <el-input v-model="ruleForm.stockStatusName" placeholder="璇疯緭鍏ュ簱瀛樼姸鎬佸悕绉�" maxlength="50" show-word-limit clearable />
+
+ </el-form-item>
+
+ </el-col>
+ <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20">
+ <el-form-item label="鎿嶄綔鍘熷洜" prop="operReason">
+ <el-input v-model="ruleForm.operReason" placeholder="璇疯緭鍏ユ搷浣滃師鍥�" maxlength="255" show-word-limit clearable />
+
+ </el-form-item>
+
+ </el-col>
+ <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20">
+ <el-form-item label="鎿嶄綔浜�" prop="operUser">
+ <el-input v-model="ruleForm.operUser" placeholder="璇疯緭鍏ユ搷浣滀汉" maxlength="50" show-word-limit clearable />
+
+ </el-form-item>
+
+ </el-col>
+ <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20">
+ <el-form-item label="鎿嶄綔鏃堕棿" prop="operTime">
+ <el-date-picker v-model="ruleForm.operTime" type="date" placeholder="鎿嶄綔鏃堕棿" />
+
+ </el-form-item>
+
+ </el-col>
+ <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20">
+ <el-form-item label="閿佸畾鐘舵��" prop="lockStatus">
+ <el-select clearable v-model="ruleForm.lockStatus" placeholder="璇烽�夋嫨閿佸畾鐘舵��">
+ <el-option v-for="(item,index) in getEnumLockStatusData" :key="index" :value="item.value" :label="`${item.describe}`"></el-option>
+
+ </el-select>
+
+ </el-form-item>
+
+ </el-col>
+ <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20">
+ <el-form-item label="閿佸畾鍘熷洜" prop="lockReason">
+ <el-input v-model="ruleForm.lockReason" placeholder="璇疯緭鍏ラ攣瀹氬師鍥�" maxlength="255" show-word-limit clearable />
+
+ </el-form-item>
+
+ </el-col>
+ <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20">
+ <el-form-item label="閿佸畾浜�" prop="lockUser">
+ <el-input v-model="ruleForm.lockUser" placeholder="璇疯緭鍏ラ攣瀹氫汉" maxlength="50" show-word-limit clearable />
+
+ </el-form-item>
+
+ </el-col>
+ <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20">
+ <el-form-item label="閿佸畾鏃堕棿" prop="lockTime">
+ <el-date-picker v-model="ruleForm.lockTime" type="date" placeholder="閿佸畾鏃堕棿" />
+
+ </el-form-item>
+
+ </el-col>
+ <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20">
+ <el-form-item label="澶囨敞" prop="remarks">
+ <el-input v-model="ruleForm.remarks" placeholder="璇疯緭鍏ュ娉�" maxlength="255" show-word-limit clearable />
+
+ </el-form-item>
+
+ </el-col>
+ </el-row>
+ </el-form>
+ <template #footer>
+ <span class="dialog-footer">
+ <el-button @click="cancel">鍙� 娑�</el-button>
+ <el-button type="primary" @click="submit" :disabled="disabled_btn">纭� 瀹�</el-button>
+ </span>
+ </template>
+ </el-dialog>
+ </div>
+</template>
+<style scoped>
+:deep(.el-select),
+:deep(.el-input-number) {
+ width: 100%;
+}
+</style>
+<script lang="ts" setup>
+ import { ref,onMounted } from "vue";
+ import { getDictDataItem as di, getDictDataList as dl } from '/@/utils/dict-utils';
+ import { ElMessage } from "element-plus";
+ import type { FormRules } from "element-plus";
+ import { addWmsStockQuan, updateWmsStockQuan, detailWmsStockQuan } from "/@/api/main/WmsStockQuan/wmsStockQuan";
+ import { getAPI } from '/@/utils/axios-utils';
+ import { SysEnumApi } from '/@/api-services/api';
+
+ const getEnumStockStatusData = ref<any>([]);
+ const getEnumLockStatusData = ref<any>([]);
+ //鐖剁骇浼犻�掓潵鐨勫弬鏁�
+ var props = defineProps({
+ title: {
+ type: String,
+ default: "",
+ },
+ });
+ //鐖剁骇浼犻�掓潵鐨勫嚱鏁帮紝鐢ㄤ簬鍥炶皟
+ const emit = defineEmits(["reloadTable"]);
+ const ruleFormRef = ref();
+ const isShowDialog = ref(false);
+ const loading = ref(false);
+ const disabled_btn = ref(false);
+ const ruleForm = ref<any>({});
+ //鑷娣诲姞鍏朵粬瑙勫垯
+ const rules = ref<FormRules>({
+ placeCode: [{required: true, message: '璇疯緭鍏ュ簱浣嶇紪鐮侊紒', trigger: 'blur',},],
+ upi: [{required: true, message: '璇疯緭鍏ラ儴浠舵潯鐮侊紒', trigger: 'blur',},],
+ detailName: [{required: true, message: '璇疯緭鍏ラ儴浠跺悕绉帮紒', trigger: 'blur',},],
+ planNo: [{required: true, message: '璇疯緭鍏ユ壒娆★紒', trigger: 'blur',},],
+ orderId: [{required: true, message: '璇疯緭鍏ヨ鍗曞彿锛�', trigger: 'blur',},],
+ packageCode: [{required: true, message: '璇疯緭鍏ュ寘瑁呭彿锛�', trigger: 'blur',},],
+ length: [{required: true, message: '璇疯緭鍏ラ暱锛�', trigger: 'blur',},],
+ width: [{required: true, message: '璇疯緭鍏ュ锛�', trigger: 'blur',},],
+ thk: [{required: true, message: '璇疯緭鍏ュ帤锛�', trigger: 'blur',},],
+ stockStatus: [{required: true, message: '璇烽�夋嫨搴撳瓨鐘舵�侊紒', trigger: 'change',},],
+ stockStatusName: [{required: true, message: '璇疯緭鍏ュ簱瀛樼姸鎬佸悕绉帮紒', trigger: 'blur',},],
+ lockStatus: [{required: true, message: '璇烽�夋嫨閿佸畾鐘舵�侊紒', trigger: 'change',},],
+ isDelete: [{required: true, message: '璇烽�夋嫨杞垹闄わ紒', trigger: 'change',},],
+ });
+
+ /*
+ * 鎵撳紑寮圭獥
+ * @param flag 鏍囪锛�1鏂板 2缂栬緫 3鏌ョ湅锛�
+ * @param row 琛屾暟鎹�
+ */
+ const openDialog = async (flag: number,row: any) => {
+ // ruleForm.value = JSON.parse(JSON.stringify(row));
+ // 鏀圭敤detail鑾峰彇鏈�鏂版暟鎹潵缂栬緫
+ let rowData = JSON.parse(JSON.stringify(row));
+ if (rowData.id)
+ ruleForm.value = (await detailWmsStockQuan(rowData.id)).data.result;
+ else {
+ ruleForm.value = rowData;
+ }
+ isShowDialog.value = true;
+ };
+
+ // 鍏抽棴寮圭獥
+ const closeDialog = () => {
+ emit("reloadTable");
+ isShowDialog.value = false;
+ };
+
+ // 鍙栨秷
+ const cancel = () => {
+ isShowDialog.value = false;
+ };
+
+ // 鎻愪氦
+ const submit = async () => {
+ disabled_btn.value = true;
+ ruleFormRef.value.validate(async (isValid: boolean, fields?: any) => {
+ if (isValid) {
+ loading.value = true;
+ let values = ruleForm.value;
+ let ret={};
+ let title='鏂板';
+ if (ruleForm.value.id == undefined || ruleForm.value.id == null || ruleForm.value.id == "" || ruleForm.value.id == 0) {
+ ret = await addWmsStockQuan(values);
+ } else {
+ title='缂栬緫';
+ ret = await updateWmsStockQuan(values);
+ }
+ loading.value = false;
+ disabled_btn.value = false;
+ if(ret.data.type=="success"){
+ ElMessage.success(title+'鎴愬姛');
+ closeDialog();
+ }
+ } else {
+ disabled_btn.value = false;
+ ElMessage({
+ message: `琛ㄥ崟鏈�${Object.keys(fields).length}澶勯獙璇佸け璐ワ紝璇蜂慨鏀瑰悗鍐嶆彁浜,
+ type: "error",
+ });
+ }
+ });
+ };
+
+
+
+
+
+
+
+ // 椤甸潰鍔犺浇鏃�
+ onMounted(async () => {
+ getEnumStockStatusData.value = (await getAPI(SysEnumApi).apiSysEnumEnumDataListGet('StockStatusEnum')).data.result ?? [];
+ getEnumLockStatusData.value = (await getAPI(SysEnumApi).apiSysEnumEnumDataListGet('LockStatusEnum')).data.result ?? [];
+ });
+
+ //灏嗗睘鎬ф垨鑰呭嚱鏁版毚闇茬粰鐖剁粍浠�
+ defineExpose({ openDialog });
+</script>
+
+
+
+
diff --git a/LA24030_LuLiPackageLine_Web/src/views/main/WmsStockQuan/wmsStockQuan/index.vue b/LA24030_LuLiPackageLine_Web/src/views/main/WmsStockQuan/wmsStockQuan/index.vue
new file mode 100644
index 0000000..7f88552
--- /dev/null
+++ b/LA24030_LuLiPackageLine_Web/src/views/main/WmsStockQuan/wmsStockQuan/index.vue
@@ -0,0 +1,387 @@
+锘�<template>
+ <div class="wmsStockQuan-container">
+ <el-card shadow="hover" :body-style="{ paddingBottom: '0' }">
+ <el-form :model="queryParamsWmsStockQuan" ref="queryForm" labelWidth="90">
+ <el-row>
+ <el-col :xs="24" :sm="12" :md="12" :lg="8" :xl="4" class="mb10">
+ <el-form-item label="鍏抽敭瀛�">
+ <el-input v-model="queryParamsWmsStockQuan.searchKey" clearable="" placeholder="搴撲綅缂栫爜,閮ㄤ欢鏉$爜,閮ㄤ欢鍚嶇О,鎵规,璁㈠崟鍙�,鍖呰鍙�,搴撳瓨鐘舵�佸悕绉�,鎿嶄綔鍘熷洜,鎿嶄綔浜�,閿佸畾鍘熷洜,閿佸畾浜�,澶囨敞,鍒涘缓浜�,淇敼浜�"/>
+
+ </el-form-item>
+ </el-col>
+ <el-col :xs="24" :sm="12" :md="12" :lg="8" :xl="4" class="mb10" v-if="showAdvanceQueryUIWmsStockQuan">
+ <el-form-item label="搴撲綅缂栫爜">
+ <el-input v-model="queryParamsWmsStockQuan.placeCode" clearable="" placeholder="璇疯緭鍏ュ簱浣嶇紪鐮�"/>
+
+ </el-form-item>
+ </el-col>
+ <el-col :xs="24" :sm="12" :md="12" :lg="8" :xl="4" class="mb10" v-if="showAdvanceQueryUIWmsStockQuan">
+ <el-form-item label="杩涘叆鏃堕棿">
+ <el-date-picker placeholder="璇烽�夋嫨杩涘叆鏃堕棿" value-format="YYYY/MM/DD" type="daterange" v-model="queryParamsWmsStockQuan.inTimeRange" />
+
+ </el-form-item>
+ </el-col>
+ <el-col :xs="24" :sm="12" :md="12" :lg="8" :xl="4" class="mb10" v-if="showAdvanceQueryUIWmsStockQuan">
+ <el-form-item label="閮ㄤ欢鏉$爜">
+ <el-input v-model="queryParamsWmsStockQuan.upi" clearable="" placeholder="璇疯緭鍏ラ儴浠舵潯鐮�"/>
+
+ </el-form-item>
+ </el-col>
+ <el-col :xs="24" :sm="12" :md="12" :lg="8" :xl="4" class="mb10" v-if="showAdvanceQueryUIWmsStockQuan">
+ <el-form-item label="閮ㄤ欢鍚嶇О">
+ <el-input v-model="queryParamsWmsStockQuan.detailName" clearable="" placeholder="璇疯緭鍏ラ儴浠跺悕绉�"/>
+
+ </el-form-item>
+ </el-col>
+ <el-col :xs="24" :sm="12" :md="12" :lg="8" :xl="4" class="mb10" v-if="showAdvanceQueryUIWmsStockQuan">
+ <el-form-item label="鎵规">
+ <el-input v-model="queryParamsWmsStockQuan.planNo" clearable="" placeholder="璇疯緭鍏ユ壒娆�"/>
+
+ </el-form-item>
+ </el-col>
+ <el-col :xs="24" :sm="12" :md="12" :lg="8" :xl="4" class="mb10" v-if="showAdvanceQueryUIWmsStockQuan">
+ <el-form-item label="璁㈠崟鍙�">
+ <el-input v-model="queryParamsWmsStockQuan.orderId" clearable="" placeholder="璇疯緭鍏ヨ鍗曞彿"/>
+
+ </el-form-item>
+ </el-col>
+ <el-col :xs="24" :sm="12" :md="12" :lg="8" :xl="4" class="mb10" v-if="showAdvanceQueryUIWmsStockQuan">
+ <el-form-item label="鍖呰鍙�">
+ <el-input v-model="queryParamsWmsStockQuan.packageCode" clearable="" placeholder="璇疯緭鍏ュ寘瑁呭彿"/>
+
+ </el-form-item>
+ </el-col>
+ <el-col :xs="24" :sm="12" :md="12" :lg="8" :xl="4" class="mb10" v-if="showAdvanceQueryUIWmsStockQuan">
+ <el-form-item label="闀�">
+ <el-input v-model="queryParamsWmsStockQuan.length" clearable="" placeholder="璇疯緭鍏ラ暱"/>
+
+ </el-form-item>
+ </el-col>
+ <el-col :xs="24" :sm="12" :md="12" :lg="8" :xl="4" class="mb10" v-if="showAdvanceQueryUIWmsStockQuan">
+ <el-form-item label="瀹�">
+ <el-input v-model="queryParamsWmsStockQuan.width" clearable="" placeholder="璇疯緭鍏ュ"/>
+
+ </el-form-item>
+ </el-col>
+ <el-col :xs="24" :sm="12" :md="12" :lg="8" :xl="4" class="mb10" v-if="showAdvanceQueryUIWmsStockQuan">
+ <el-form-item label="鍘�">
+ <el-input v-model="queryParamsWmsStockQuan.thk" clearable="" placeholder="璇疯緭鍏ュ帤"/>
+
+ </el-form-item>
+ </el-col>
+ <el-col :xs="24" :sm="12" :md="12" :lg="8" :xl="4" class="mb10" v-if="showAdvanceQueryUIWmsStockQuan">
+ <el-form-item label="搴撳瓨鐘舵��">
+ <el-select clearable="" v-model="queryParamsWmsStockQuan.stockStatus" placeholder="璇烽�夋嫨搴撳瓨鐘舵��">
+ <el-option v-for="(item,index) in getEnumStockStatusData_Index" :key="index" :value="item.value" :label="`${item.describe}`" />
+
+ </el-select>
+
+ </el-form-item>
+ </el-col>
+ <el-col :xs="24" :sm="12" :md="12" :lg="8" :xl="4" class="mb10" v-if="showAdvanceQueryUIWmsStockQuan">
+ <el-form-item label="搴撳瓨鐘舵�佸悕绉�">
+ <el-input v-model="queryParamsWmsStockQuan.stockStatusName" clearable="" placeholder="璇疯緭鍏ュ簱瀛樼姸鎬佸悕绉�"/>
+
+ </el-form-item>
+ </el-col>
+ <el-col :xs="24" :sm="12" :md="12" :lg="8" :xl="4" class="mb10" v-if="showAdvanceQueryUIWmsStockQuan">
+ <el-form-item label="鎿嶄綔鍘熷洜">
+ <el-input v-model="queryParamsWmsStockQuan.operReason" clearable="" placeholder="璇疯緭鍏ユ搷浣滃師鍥�"/>
+
+ </el-form-item>
+ </el-col>
+ <el-col :xs="24" :sm="12" :md="12" :lg="8" :xl="4" class="mb10" v-if="showAdvanceQueryUIWmsStockQuan">
+ <el-form-item label="鎿嶄綔浜�">
+ <el-input v-model="queryParamsWmsStockQuan.operUser" clearable="" placeholder="璇疯緭鍏ユ搷浣滀汉"/>
+
+ </el-form-item>
+ </el-col>
+ <el-col :xs="24" :sm="12" :md="12" :lg="8" :xl="4" class="mb10" v-if="showAdvanceQueryUIWmsStockQuan">
+ <el-form-item label="鎿嶄綔鏃堕棿">
+ <el-date-picker placeholder="璇烽�夋嫨鎿嶄綔鏃堕棿" value-format="YYYY/MM/DD" type="daterange" v-model="queryParamsWmsStockQuan.operTimeRange" />
+
+ </el-form-item>
+ </el-col>
+ <el-col :xs="24" :sm="12" :md="12" :lg="8" :xl="4" class="mb10" v-if="showAdvanceQueryUIWmsStockQuan">
+ <el-form-item label="閿佸畾鐘舵��">
+ <el-select clearable="" v-model="queryParamsWmsStockQuan.lockStatus" placeholder="璇烽�夋嫨閿佸畾鐘舵��">
+ <el-option v-for="(item,index) in getEnumLockStatusData_Index" :key="index" :value="item.value" :label="`${item.describe}`" />
+
+ </el-select>
+
+ </el-form-item>
+ </el-col>
+ <el-col :xs="24" :sm="12" :md="12" :lg="8" :xl="4" class="mb10" v-if="showAdvanceQueryUIWmsStockQuan">
+ <el-form-item label="閿佸畾鍘熷洜">
+ <el-input v-model="queryParamsWmsStockQuan.lockReason" clearable="" placeholder="璇疯緭鍏ラ攣瀹氬師鍥�"/>
+
+ </el-form-item>
+ </el-col>
+ <el-col :xs="24" :sm="12" :md="12" :lg="8" :xl="4" class="mb10" v-if="showAdvanceQueryUIWmsStockQuan">
+ <el-form-item label="閿佸畾浜�">
+ <el-input v-model="queryParamsWmsStockQuan.lockUser" clearable="" placeholder="璇疯緭鍏ラ攣瀹氫汉"/>
+
+ </el-form-item>
+ </el-col>
+ <el-col :xs="24" :sm="12" :md="12" :lg="8" :xl="4" class="mb10" v-if="showAdvanceQueryUIWmsStockQuan">
+ <el-form-item label="閿佸畾鏃堕棿">
+ <el-date-picker placeholder="璇烽�夋嫨閿佸畾鏃堕棿" value-format="YYYY/MM/DD" type="daterange" v-model="queryParamsWmsStockQuan.lockTimeRange" />
+
+ </el-form-item>
+ </el-col>
+ <el-col :xs="24" :sm="12" :md="12" :lg="8" :xl="4" class="mb10" v-if="showAdvanceQueryUIWmsStockQuan">
+ <el-form-item label="澶囨敞">
+ <el-input v-model="queryParamsWmsStockQuan.remarks" clearable="" placeholder="璇疯緭鍏ュ娉�"/>
+
+ </el-form-item>
+ </el-col>
+ <el-col :xs="24" :sm="12" :md="12" :lg="6" :xl="6" class="mb10">
+ <el-form-item>
+ <el-button-group style="display: flex; align-items: center;">
+ <el-button type="primary" icon="ele-Search" @click="handleQueryWmsStockQuan" v-auth="'wmsStockQuan:page'" :disabled="disabled_btnWmsStockQuan"> 鏌ヨ </el-button>
+ <el-button icon="ele-Refresh" @click="resetWmsStockQuan"> 閲嶇疆 </el-button>
+ <el-button icon="ele-ZoomIn" @click="changeAdvanceQueryUIWmsStockQuan" v-if="!showAdvanceQueryUIWmsStockQuan" style="margin-left:5px;"> 楂樼骇鏌ヨ </el-button>
+ <el-button icon="ele-ZoomOut" @click="changeAdvanceQueryUIWmsStockQuan" v-if="showAdvanceQueryUIWmsStockQuan" style="margin-left:5px;"> 闅愯棌 </el-button>
+ <el-button type="primary" style="margin-left:5px;" icon="ele-Plus" @click="openAddWmsStockQuan" v-auth="'wmsStockQuan:add'"> 鏂板 </el-button>
+ <el-button type="primary" style="margin-left:5px;" icon="ele-Download" @click="handleExportExcelWmsStockQuan" v-auth="'wmsStockQuan:exportExcel'" > 瀵煎嚭 </el-button>
+ </el-button-group>
+ </el-form-item>
+
+ </el-col>
+ </el-row>
+ </el-form>
+ </el-card>
+ <el-card class="full-table" shadow="hover" style="margin-top: 5px">
+ <el-table
+ ref="tableRefWmsStockQuan"
+ :data="tableDataWmsStockQuan"
+ style="width: 100%"
+ v-loading="loadingWmsStockQuan"
+ tooltip-effect="light"
+ row-key="id"
+ @sort-change="sortChangeWmsStockQuan"
+ border="">
+ <el-table-column type="index" label="搴忓彿" width="55" align="center"/>
+ <el-table-column prop="placeCode" label="搴撲綅缂栫爜" show-overflow-tooltip="" />
+ <el-table-column prop="inTime" label="杩涘叆鏃堕棿" width="80" :formatter="formatDate_T_Date" show-overflow-tooltip="" />
+ <el-table-column prop="upi" label="閮ㄤ欢鏉$爜" show-overflow-tooltip="" />
+ <el-table-column prop="detailName" label="閮ㄤ欢鍚嶇О" show-overflow-tooltip="" />
+ <el-table-column prop="planNo" label="鎵规" show-overflow-tooltip="" />
+ <el-table-column prop="orderId" label="璁㈠崟鍙�" show-overflow-tooltip="" />
+ <el-table-column prop="packageCode" label="鍖呰鍙�" show-overflow-tooltip="" />
+ <el-table-column prop="length" label="闀�" show-overflow-tooltip="" />
+ <el-table-column prop="width" label="瀹�" show-overflow-tooltip="" />
+ <el-table-column prop="thk" label="鍘�" show-overflow-tooltip="" />
+ <el-table-column prop="stockStatus" label="搴撳瓨鐘舵��" show-overflow-tooltip="" >
+ <template #default="scope">
+ <el-tag>{{ getEnumDesc(scope.row.stockStatus, getEnumStockStatusData_Index)}}</el-tag>
+ </template>
+ </el-table-column>
+ <el-table-column prop="stockStatusName" label="搴撳瓨鐘舵�佸悕绉�" show-overflow-tooltip="" />
+ <el-table-column prop="operReason" label="鎿嶄綔鍘熷洜" show-overflow-tooltip="" />
+ <el-table-column prop="operUser" label="鎿嶄綔浜�" show-overflow-tooltip="" />
+ <el-table-column prop="operTime" label="鎿嶄綔鏃堕棿" width="80" :formatter="formatDate_T_Date" show-overflow-tooltip="" />
+ <el-table-column prop="lockStatus" label="閿佸畾鐘舵��" show-overflow-tooltip="" >
+ <template #default="scope">
+ <el-tag>{{ getEnumDesc(scope.row.lockStatus, getEnumLockStatusData_Index)}}</el-tag>
+ </template>
+ </el-table-column>
+ <el-table-column prop="lockReason" label="閿佸畾鍘熷洜" show-overflow-tooltip="" />
+ <el-table-column prop="lockUser" label="閿佸畾浜�" show-overflow-tooltip="" />
+ <el-table-column prop="lockTime" label="閿佸畾鏃堕棿" width="80" :formatter="formatDate_T_Date" show-overflow-tooltip="" />
+ <el-table-column prop="remarks" label="澶囨敞" show-overflow-tooltip="" />
+ <el-table-column prop="createTime" label="鍒涘缓鏃堕棿" width="130" :formatter="formatDate_T_Time" show-overflow-tooltip="" />
+ <el-table-column prop="updateTime" label="淇敼鏃堕棿" width="130" :formatter="formatDate_T_Time" show-overflow-tooltip="" />
+ <el-table-column prop="createUserName" label="鍒涘缓浜�" show-overflow-tooltip="" />
+ <el-table-column prop="updateUserName" label="淇敼浜�" show-overflow-tooltip="" />
+ <el-table-column label="鎿嶄綔" width="140" align="center" fixed="right" show-overflow-tooltip="" v-if="auth('wmsStockQuan:update') || auth('wmsStockQuan:delete')">
+ <template #default="scope">
+ <el-button icon="ele-Edit" size="small" text="" type="primary" @click="openEditWmsStockQuan(scope.row)" v-auth="'wmsStockQuan:update'"> 缂栬緫 </el-button>
+ <el-button icon="ele-Delete" size="small" text="" type="primary" @click="delWmsStockQuan(scope.row)" v-auth="'wmsStockQuan:delete'"> 鍒犻櫎 </el-button>
+ </template>
+ </el-table-column>
+ </el-table>
+ <el-pagination
+ v-model:currentPage="tableParamsWmsStockQuan.page"
+ v-model:page-size="tableParamsWmsStockQuan.pageSize"
+ :total="tableParamsWmsStockQuan.total"
+ :page-sizes="[10, 20, 50, 100, 200, 500]"
+ small=""
+ background=""
+ @size-change="handleSizeChangeWmsStockQuan"
+ @current-change="handleCurrentChangeWmsStockQuan"
+ layout="total, sizes, prev, pager, next, jumper"
+ />
+ <printDialogWmsStockQuan
+ ref="printDialogRefWmsStockQuan"
+ :title="printWmsStockQuanTitle"
+ @reloadTable="handleQueryWmsStockQuan" />
+ <editDialogWmsStockQuan
+ ref="editDialogRefWmsStockQuan"
+ :title="editWmsStockQuanTitle"
+ @reloadTable="handleQueryWmsStockQuan"
+ />
+ </el-card>
+ </div>
+</template>
+
+<script lang="ts" setup="" name="wmsStockQuan">
+ import { ref,onMounted } from "vue";
+ import { ElMessageBox, ElMessage } from "element-plus";
+ import { auth } from '/@/utils/authFunction';
+ import { getDictDataItem as di, getDictDataList as dl } from '/@/utils/dict-utils';
+ import { formatDate,formatDate_T_Date,formatDate_T_Time,defaultTimeRange } from '/@/utils/formatTime';
+ import { exportPageExcel } from '/@/utils/exportPageExcel' //寮曞叆瀵煎嚭鏂规硶
+
+
+ import printDialogWmsStockQuan from '/@/views/system/print/component/hiprint/preview.vue'
+ import { pageWmsStockQuan, deleteWmsStockQuan,importExcelWmsStockQuan,downloadExcelTemplateWmsStockQuan } from '/@/api/main/WmsStockQuan/wmsStockQuan';
+ import { getAPI } from '/@/utils/axios-utils';
+ import { SysEnumApi } from '/@/api-services/api';
+ import commonFunction from '/@/utils/commonFunction';
+
+ const getEnumStockStatusData_Index = ref<any>([]);
+ const getEnumLockStatusData_Index = ref<any>([]);
+
+ const { getEnumDesc } = commonFunction();
+
+ /***************************************************[搴撳瓨淇℃伅鎿嶄綔]寮�濮�***************************************************/
+ const showAdvanceQueryUIWmsStockQuan = ref(false);
+ const tableRefWmsStockQuan = ref(null);
+ const printDialogRefWmsStockQuan = ref();
+ const editDialogRefWmsStockQuan = ref();
+ const loadingWmsStockQuan = ref(false);
+ const disabled_btnWmsStockQuan = ref(false);
+ const tableDataWmsStockQuan = ref<any>([]);
+ const queryParamsWmsStockQuan = ref<any>({});
+ const tableParamsWmsStockQuan = ref({
+ page: 1,
+ pageSize: 10,
+ total: 0,
+ });
+
+ const printWmsStockQuanTitle = ref("");
+ const editWmsStockQuanTitle = ref("");
+
+ // 鏀瑰彉楂樼骇鏌ヨ鐨勬帶浠舵樉绀虹姸鎬�
+ const changeAdvanceQueryUIWmsStockQuan = () => {
+ showAdvanceQueryUIWmsStockQuan.value = !showAdvanceQueryUIWmsStockQuan.value;
+ }
+
+ // 鏌ヨ搴撳瓨淇℃伅
+ const handleQueryWmsStockQuan = async () => {
+ loadingWmsStockQuan.value = true;
+ disabled_btnWmsStockQuan.value = true;
+ var res = await pageWmsStockQuan(Object.assign(queryParamsWmsStockQuan.value, tableParamsWmsStockQuan.value));
+ if(res.data.type=="success"){
+ tableDataWmsStockQuan.value = res.data.result?.items ?? [];
+ tableParamsWmsStockQuan.value.total = res.data.result?.total;
+ }
+ loadingWmsStockQuan.value = false;
+ disabled_btnWmsStockQuan.value = false;
+ };
+
+ // 閲嶇疆搴撳瓨淇℃伅鏌ヨ
+ const resetWmsStockQuan = async () => {
+ queryParamsWmsStockQuan.value = {}
+ };
+
+ // 搴撳瓨淇℃伅鍒楁帓搴�
+ const sortChangeWmsStockQuan = async (column: any) => {
+ queryParamsWmsStockQuan.value.field = column.prop;
+ queryParamsWmsStockQuan.value.order = column.order;
+ await handleQueryWmsStockQuan();
+ };
+
+ // 鎵撳紑鏂板搴撳瓨淇℃伅椤甸潰
+ const openAddWmsStockQuan = () => {
+ editWmsStockQuanTitle.value = '娣诲姞搴撳瓨淇℃伅';
+ editDialogRefWmsStockQuan.value.openDialog(1,{});
+ };
+
+ // 鎵撳紑鎵撳嵃搴撳瓨淇℃伅椤甸潰
+ const openPrintWmsStockQuan = async (row: any) => {
+ printWmsStockQuanTitle.value = '鎵撳嵃搴撳瓨淇℃伅';
+ }
+
+ // 鎵撳紑缂栬緫搴撳瓨淇℃伅椤甸潰
+ const openEditWmsStockQuan = (row: any) => {
+ editWmsStockQuanTitle.value = '缂栬緫搴撳瓨淇℃伅';
+ editDialogRefWmsStockQuan.value.openDialog(2,row);
+ };
+
+ // 鍒犻櫎搴撳瓨淇℃伅
+ const delWmsStockQuan = (row: any) => {
+ ElMessageBox.confirm(`纭畾瑕佸垹闄ゅ悧?`, "鎻愮ず", {
+ confirmButtonText: "纭畾",
+ cancelButtonText: "鍙栨秷",
+ type: "warning",
+ })
+ .then(async () => {
+ loadingWmsStockQuan.value = true;
+ var ret = await deleteWmsStockQuan(row);
+ if(ret.data.type=="success"){
+ ElMessage.success("鍒犻櫎鎴愬姛");
+ }
+ loadingWmsStockQuan.value = false;
+ handleQueryWmsStockQuan();
+ })
+ .catch(() => {});
+ };
+
+ // 鏀瑰彉搴撳瓨淇℃伅椤甸潰瀹归噺
+ const handleSizeChangeWmsStockQuan = (val: number) => {
+ tableParamsWmsStockQuan.value.pageSize = val;
+ handleQueryWmsStockQuan();
+ };
+
+ // 鏀瑰彉搴撳瓨淇℃伅椤电爜搴忓彿
+ const handleCurrentChangeWmsStockQuan = (val: number) => {
+ tableParamsWmsStockQuan.value.page = val;
+ handleQueryWmsStockQuan();
+ };
+
+/***************************************************[搴撳瓨淇℃伅鎿嶄綔]缁撴潫***************************************************/
+/***************************************************[搴撳瓨淇℃伅瀵煎嚭]寮�濮�***************************************************/
+//瀹氫箟褰撳墠椤甸潰鐨勬柟娉曠粍
+const functionMapWmsStockQuan = {
+ getEnumStockStatusData_Index,
+ getEnumLockStatusData_Index,
+ formatDate_T_Date,
+ formatDate_T_Time
+};
+//鐐瑰嚮瀵煎嚭鎸夐挳
+const handleExportExcelWmsStockQuan = async (formData:Blob) => {
+ loadingWmsStockQuan.value = true;
+ disabled_btnWmsStockQuan.value = true;
+ var new_tableParamsWmsStockQuan=JSON.parse(JSON.stringify(tableParamsWmsStockQuan.value));
+ new_tableParamsWmsStockQuan.page = 1;
+ new_tableParamsWmsStockQuan.pageSize = 100000;
+ var res = await pageWmsStockQuan(Object.assign(queryParamsWmsStockQuan.value, new_tableParamsWmsStockQuan));
+ if(res.data.type=="success"){
+ exportExcelWmsStockQuan(res.data.result?.items ?? []);
+ }
+ loadingWmsStockQuan.value = false;
+ disabled_btnWmsStockQuan.value = false;
+};
+//瀵煎嚭
+const exportExcelWmsStockQuan = async (exportDataList:Array) => {
+ exportPageExcel(exportDataList, tableRefWmsStockQuan,"搴撳瓨淇℃伅",functionMapWmsStockQuan);
+};
+/***************************************************[搴撳瓨淇℃伅瀵煎嚭]缁撴潫***************************************************/
+ // 搴撳瓨淇℃伅椤甸潰鍔犺浇鏃�
+ onMounted(async () => {
+ getEnumStockStatusData_Index.value = (await getAPI(SysEnumApi).apiSysEnumEnumDataListGet('StockStatusEnum')).data.result ?? [];
+ getEnumLockStatusData_Index.value = (await getAPI(SysEnumApi).apiSysEnumEnumDataListGet('LockStatusEnum')).data.result ?? [];
+ });
+
+ handleQueryWmsStockQuan();
+</script>
+<style scoped>
+:deep(.el-input),
+:deep(.el-select),
+:deep(.el-input-number) {
+ width: 100%;
+}
+</style>
+
diff --git a/LA24030_LuLiPackageLine_Wms/Admin.NET.Application/Service/WmsBase/WmsBasePlace/WmsBasePlaceService.cs b/LA24030_LuLiPackageLine_Wms/Admin.NET.Application/Service/WmsBase/WmsBasePlace/WmsBasePlaceService.cs
index da7ecf6..7228b9c 100644
--- a/LA24030_LuLiPackageLine_Wms/Admin.NET.Application/Service/WmsBase/WmsBasePlace/WmsBasePlaceService.cs
+++ b/LA24030_LuLiPackageLine_Wms/Admin.NET.Application/Service/WmsBase/WmsBasePlace/WmsBasePlaceService.cs
@@ -230,8 +230,8 @@
WmsBasePlace place = new WmsBasePlace();
place.PlaceType = placeTypeEnum;
place.PlaceTypeName = placeTypeEnum.ToString();
- place.PlaceCode = aisle.ToString("00") + column.ToString("00") + layer.ToString("00");
- place.PlaceName = aisle.ToString("00") + column.ToString("00") + layer.ToString("00");
+ place.PlaceCode = aisle.ToString("00") + layer.ToString("00") + column.ToString("00");
+ place.PlaceName = aisle.ToString("00") + layer.ToString("00") + column.ToString("00");
place.AreaCode = "";
place.PlaceStatus = PlaceStatusEnum.姝e父;
place.AreaName = "鏈哄櫒浜哄矝缂撳瓨鍖�";
diff --git a/LA24030_LuLiPackageLine_Wms/Admin.NET.Application/Service/WmsStockQuan/WmsStockQuan/Dto/WmsStockQuanInput.cs b/LA24030_LuLiPackageLine_Wms/Admin.NET.Application/Service/WmsStockQuan/WmsStockQuan/Dto/WmsStockQuanInput.cs
new file mode 100644
index 0000000..50b71cc
--- /dev/null
+++ b/LA24030_LuLiPackageLine_Wms/Admin.NET.Application/Service/WmsStockQuan/WmsStockQuan/Dto/WmsStockQuanInput.cs
@@ -0,0 +1,383 @@
+锘縰sing Admin.NET.Core;
+using System.ComponentModel.DataAnnotations;
+
+namespace Admin.NET.Application;
+
+ /// <summary>
+ /// 搴撳瓨淇℃伅鍩虹杈撳叆鍙傛暟
+ /// </summary>
+ public class WmsStockQuanBaseInput
+ {
+ /// <summary>
+ /// 搴撲綅缂栫爜
+ /// </summary>
+ public virtual string PlaceCode { get; set; }
+
+ /// <summary>
+ /// 杩涘叆鏃堕棿
+ /// </summary>
+ public virtual DateTime? InTime { get; set; }
+
+ /// <summary>
+ /// 閮ㄤ欢鏉$爜
+ /// </summary>
+ public virtual string Upi { get; set; }
+
+ /// <summary>
+ /// 閮ㄤ欢鍚嶇О
+ /// </summary>
+ public virtual string DetailName { get; set; }
+
+ /// <summary>
+ /// 鎵规
+ /// </summary>
+ public virtual string PlanNo { get; set; }
+
+ /// <summary>
+ /// 璁㈠崟鍙�
+ /// </summary>
+ public virtual string OrderId { get; set; }
+
+ /// <summary>
+ /// 鍖呰鍙�
+ /// </summary>
+ public virtual string PackageCode { get; set; }
+
+ /// <summary>
+ /// 闀�
+ /// </summary>
+ public virtual float Length { get; set; }
+
+ /// <summary>
+ /// 瀹�
+ /// </summary>
+ public virtual float Width { get; set; }
+
+ /// <summary>
+ /// 鍘�
+ /// </summary>
+ public virtual float Thk { get; set; }
+
+ /// <summary>
+ /// 搴撳瓨鐘舵��
+ /// </summary>
+ public virtual Admin.NET.Application.StockStatusEnum StockStatus { get; set; }
+
+ /// <summary>
+ /// 搴撳瓨鐘舵�佸悕绉�
+ /// </summary>
+ public virtual string StockStatusName { get; set; }
+
+ /// <summary>
+ /// 鎿嶄綔鍘熷洜
+ /// </summary>
+ public virtual string OperReason { get; set; }
+
+ /// <summary>
+ /// 鎿嶄綔浜�
+ /// </summary>
+ public virtual string OperUser { get; set; }
+
+ /// <summary>
+ /// 鎿嶄綔鏃堕棿
+ /// </summary>
+ public virtual DateTime? OperTime { get; set; }
+
+ /// <summary>
+ /// 閿佸畾鐘舵��
+ /// </summary>
+ public virtual Admin.NET.Application.LockStatusEnum LockStatus { get; set; }
+
+ /// <summary>
+ /// 閿佸畾鍘熷洜
+ /// </summary>
+ public virtual string LockReason { get; set; }
+
+ /// <summary>
+ /// 閿佸畾浜�
+ /// </summary>
+ public virtual string LockUser { get; set; }
+
+ /// <summary>
+ /// 閿佸畾鏃堕棿
+ /// </summary>
+ public virtual DateTime? LockTime { get; set; }
+
+ /// <summary>
+ /// 澶囨敞
+ /// </summary>
+ public virtual string Remarks { get; set; }
+
+ /// <summary>
+ /// 鍒涘缓鏃堕棿
+ /// </summary>
+ public virtual DateTime? CreateTime { get; set; }
+
+ /// <summary>
+ /// 淇敼鏃堕棿
+ /// </summary>
+ public virtual DateTime? UpdateTime { get; set; }
+
+ /// <summary>
+ /// 鍒涘缓浜篒d
+ /// </summary>
+ public virtual long? CreateUserId { get; set; }
+
+ /// <summary>
+ /// 鍒涘缓浜�
+ /// </summary>
+ public virtual string CreateUserName { get; set; }
+
+ /// <summary>
+ /// 淇敼浜篒d
+ /// </summary>
+ public virtual long? UpdateUserId { get; set; }
+
+ /// <summary>
+ /// 淇敼浜�
+ /// </summary>
+ public virtual string UpdateUserName { get; set; }
+
+ /// <summary>
+ /// 杞垹闄�
+ /// </summary>
+ public virtual bool IsDelete { get; set; }
+
+ }
+
+ /// <summary>
+ /// 搴撳瓨淇℃伅鍒嗛〉鏌ヨ杈撳叆鍙傛暟
+ /// </summary>
+ public class WmsStockQuanInput : BasePageInput
+ {
+ /// <summary>
+ /// 鍏抽敭瀛楁煡璇�
+ /// </summary>
+ public string? SearchKey { get; set; }
+
+ /// <summary>
+ /// 搴撲綅缂栫爜
+ /// </summary>
+ public string? PlaceCode { get; set; }
+
+ /// <summary>
+ /// 杩涘叆鏃堕棿
+ /// </summary>
+ public DateTime? InTime { get; set; }
+
+ /// <summary>
+ /// 杩涘叆鏃堕棿鑼冨洿
+ /// </summary>
+ public List<DateTime?> InTimeRange { get; set; }
+ /// <summary>
+ /// 閮ㄤ欢鏉$爜
+ /// </summary>
+ public string? Upi { get; set; }
+
+ /// <summary>
+ /// 閮ㄤ欢鍚嶇О
+ /// </summary>
+ public string? DetailName { get; set; }
+
+ /// <summary>
+ /// 鎵规
+ /// </summary>
+ public string? PlanNo { get; set; }
+
+ /// <summary>
+ /// 璁㈠崟鍙�
+ /// </summary>
+ public string? OrderId { get; set; }
+
+ /// <summary>
+ /// 鍖呰鍙�
+ /// </summary>
+ public string? PackageCode { get; set; }
+
+ /// <summary>
+ /// 闀�
+ /// </summary>
+ public float? Length { get; set; }
+
+ /// <summary>
+ /// 瀹�
+ /// </summary>
+ public float? Width { get; set; }
+
+ /// <summary>
+ /// 鍘�
+ /// </summary>
+ public float? Thk { get; set; }
+
+ /// <summary>
+ /// 搴撳瓨鐘舵��
+ /// </summary>
+ public Admin.NET.Application.StockStatusEnum? StockStatus { get; set; }
+
+ /// <summary>
+ /// 搴撳瓨鐘舵�佸悕绉�
+ /// </summary>
+ public string? StockStatusName { get; set; }
+
+ /// <summary>
+ /// 鎿嶄綔鍘熷洜
+ /// </summary>
+ public string? OperReason { get; set; }
+
+ /// <summary>
+ /// 鎿嶄綔浜�
+ /// </summary>
+ public string? OperUser { get; set; }
+
+ /// <summary>
+ /// 鎿嶄綔鏃堕棿
+ /// </summary>
+ public DateTime? OperTime { get; set; }
+
+ /// <summary>
+ /// 鎿嶄綔鏃堕棿鑼冨洿
+ /// </summary>
+ public List<DateTime?> OperTimeRange { get; set; }
+ /// <summary>
+ /// 閿佸畾鐘舵��
+ /// </summary>
+ public Admin.NET.Application.LockStatusEnum? LockStatus { get; set; }
+
+ /// <summary>
+ /// 閿佸畾鍘熷洜
+ /// </summary>
+ public string? LockReason { get; set; }
+
+ /// <summary>
+ /// 閿佸畾浜�
+ /// </summary>
+ public string? LockUser { get; set; }
+
+ /// <summary>
+ /// 閿佸畾鏃堕棿
+ /// </summary>
+ public DateTime? LockTime { get; set; }
+
+ /// <summary>
+ /// 閿佸畾鏃堕棿鑼冨洿
+ /// </summary>
+ public List<DateTime?> LockTimeRange { get; set; }
+ /// <summary>
+ /// 澶囨敞
+ /// </summary>
+ public string? Remarks { get; set; }
+
+ }
+
+ /// <summary>
+ /// 搴撳瓨淇℃伅澧炲姞杈撳叆鍙傛暟
+ /// </summary>
+ public class AddWmsStockQuanInput : WmsStockQuanBaseInput
+ {
+ /// <summary>
+ /// 搴撲綅缂栫爜
+ /// </summary>
+ [Required(ErrorMessage = "搴撲綅缂栫爜涓嶈兘涓虹┖")]
+ public override string PlaceCode { get; set; }
+
+ /// <summary>
+ /// 閮ㄤ欢鏉$爜
+ /// </summary>
+ [Required(ErrorMessage = "閮ㄤ欢鏉$爜涓嶈兘涓虹┖")]
+ public override string Upi { get; set; }
+
+ /// <summary>
+ /// 閮ㄤ欢鍚嶇О
+ /// </summary>
+ [Required(ErrorMessage = "閮ㄤ欢鍚嶇О涓嶈兘涓虹┖")]
+ public override string DetailName { get; set; }
+
+ /// <summary>
+ /// 鎵规
+ /// </summary>
+ [Required(ErrorMessage = "鎵规涓嶈兘涓虹┖")]
+ public override string PlanNo { get; set; }
+
+ /// <summary>
+ /// 璁㈠崟鍙�
+ /// </summary>
+ [Required(ErrorMessage = "璁㈠崟鍙蜂笉鑳戒负绌�")]
+ public override string OrderId { get; set; }
+
+ /// <summary>
+ /// 鍖呰鍙�
+ /// </summary>
+ [Required(ErrorMessage = "鍖呰鍙蜂笉鑳戒负绌�")]
+ public override string PackageCode { get; set; }
+
+ /// <summary>
+ /// 闀�
+ /// </summary>
+ [Required(ErrorMessage = "闀夸笉鑳戒负绌�")]
+ public override float Length { get; set; }
+
+ /// <summary>
+ /// 瀹�
+ /// </summary>
+ [Required(ErrorMessage = "瀹戒笉鑳戒负绌�")]
+ public override float Width { get; set; }
+
+ /// <summary>
+ /// 鍘�
+ /// </summary>
+ [Required(ErrorMessage = "鍘氫笉鑳戒负绌�")]
+ public override float Thk { get; set; }
+
+ /// <summary>
+ /// 搴撳瓨鐘舵��
+ /// </summary>
+ [Required(ErrorMessage = "搴撳瓨鐘舵�佷笉鑳戒负绌�")]
+ public override Admin.NET.Application.StockStatusEnum StockStatus { get; set; }
+
+ /// <summary>
+ /// 搴撳瓨鐘舵�佸悕绉�
+ /// </summary>
+ [Required(ErrorMessage = "搴撳瓨鐘舵�佸悕绉颁笉鑳戒负绌�")]
+ public override string StockStatusName { get; set; }
+
+ /// <summary>
+ /// 閿佸畾鐘舵��
+ /// </summary>
+ [Required(ErrorMessage = "閿佸畾鐘舵�佷笉鑳戒负绌�")]
+ public override Admin.NET.Application.LockStatusEnum LockStatus { get; set; }
+
+ /// <summary>
+ /// 杞垹闄�
+ /// </summary>
+ [Required(ErrorMessage = "杞垹闄や笉鑳戒负绌�")]
+ public override bool IsDelete { get; set; }
+
+ }
+
+ /// <summary>
+ /// 搴撳瓨淇℃伅鍒犻櫎杈撳叆鍙傛暟
+ /// </summary>
+ public class DeleteWmsStockQuanInput : BaseIdInput
+ {
+ }
+
+ /// <summary>
+ /// 搴撳瓨淇℃伅鏇存柊杈撳叆鍙傛暟
+ /// </summary>
+ public class UpdateWmsStockQuanInput : AddWmsStockQuanInput
+ {
+ /// <summary>
+ /// 涓婚敭Id
+ /// </summary>
+ [Required(ErrorMessage = "涓婚敭Id涓嶈兘涓虹┖")]
+ public long Id { get; set; }
+
+ }
+
+ /// <summary>
+ /// 搴撳瓨淇℃伅涓婚敭鏌ヨ杈撳叆鍙傛暟
+ /// </summary>
+ public class QueryByIdWmsStockQuanInput : DeleteWmsStockQuanInput
+ {
+
+ }
diff --git a/LA24030_LuLiPackageLine_Wms/Admin.NET.Application/Service/WmsStockQuan/WmsStockQuan/Dto/WmsStockQuanOutput.cs b/LA24030_LuLiPackageLine_Wms/Admin.NET.Application/Service/WmsStockQuan/WmsStockQuan/Dto/WmsStockQuanOutput.cs
new file mode 100644
index 0000000..cf82253
--- /dev/null
+++ b/LA24030_LuLiPackageLine_Wms/Admin.NET.Application/Service/WmsStockQuan/WmsStockQuan/Dto/WmsStockQuanOutput.cs
@@ -0,0 +1,150 @@
+锘縩amespace Admin.NET.Application;
+
+/// <summary>
+/// 搴撳瓨淇℃伅杈撳嚭鍙傛暟
+/// </summary>
+public class WmsStockQuanOutput
+{
+ /// <summary>
+ /// 涓婚敭Id
+ /// </summary>
+ public long? Id { get; set; }
+
+ /// <summary>
+ /// 搴撲綅缂栫爜
+ /// </summary>
+ public string PlaceCode { get; set; }
+
+ /// <summary>
+ /// 杩涘叆鏃堕棿
+ /// </summary>
+ public DateTime? InTime { get; set; }
+
+ /// <summary>
+ /// 閮ㄤ欢鏉$爜
+ /// </summary>
+ public string Upi { get; set; }
+
+ /// <summary>
+ /// 閮ㄤ欢鍚嶇О
+ /// </summary>
+ public string DetailName { get; set; }
+
+ /// <summary>
+ /// 鎵规
+ /// </summary>
+ public string PlanNo { get; set; }
+
+ /// <summary>
+ /// 璁㈠崟鍙�
+ /// </summary>
+ public string OrderId { get; set; }
+
+ /// <summary>
+ /// 鍖呰鍙�
+ /// </summary>
+ public string PackageCode { get; set; }
+
+ /// <summary>
+ /// 闀�
+ /// </summary>
+ public float Length { get; set; }
+
+ /// <summary>
+ /// 瀹�
+ /// </summary>
+ public float Width { get; set; }
+
+ /// <summary>
+ /// 鍘�
+ /// </summary>
+ public float Thk { get; set; }
+
+ /// <summary>
+ /// 搴撳瓨鐘舵��
+ /// </summary>
+ public Admin.NET.Application.StockStatusEnum StockStatus { get; set; }
+
+ /// <summary>
+ /// 搴撳瓨鐘舵�佸悕绉�
+ /// </summary>
+ public string StockStatusName { get; set; }
+
+ /// <summary>
+ /// 鎿嶄綔鍘熷洜
+ /// </summary>
+ public string OperReason { get; set; }
+
+ /// <summary>
+ /// 鎿嶄綔浜�
+ /// </summary>
+ public string OperUser { get; set; }
+
+ /// <summary>
+ /// 鎿嶄綔鏃堕棿
+ /// </summary>
+ public DateTime? OperTime { get; set; }
+
+ /// <summary>
+ /// 閿佸畾鐘舵��
+ /// </summary>
+ public Admin.NET.Application.LockStatusEnum LockStatus { get; set; }
+
+ /// <summary>
+ /// 閿佸畾鍘熷洜
+ /// </summary>
+ public string LockReason { get; set; }
+
+ /// <summary>
+ /// 閿佸畾浜�
+ /// </summary>
+ public string LockUser { get; set; }
+
+ /// <summary>
+ /// 閿佸畾鏃堕棿
+ /// </summary>
+ public DateTime? LockTime { get; set; }
+
+ /// <summary>
+ /// 澶囨敞
+ /// </summary>
+ public string Remarks { get; set; }
+
+ /// <summary>
+ /// 鍒涘缓鏃堕棿
+ /// </summary>
+ public DateTime? CreateTime { get; set; }
+
+ /// <summary>
+ /// 淇敼鏃堕棿
+ /// </summary>
+ public DateTime? UpdateTime { get; set; }
+
+ /// <summary>
+ /// 鍒涘缓浜篒d
+ /// </summary>
+ public long? CreateUserId { get; set; }
+
+ /// <summary>
+ /// 鍒涘缓浜�
+ /// </summary>
+ public string CreateUserName { get; set; }
+
+ /// <summary>
+ /// 淇敼浜篒d
+ /// </summary>
+ public long? UpdateUserId { get; set; }
+
+ /// <summary>
+ /// 淇敼浜�
+ /// </summary>
+ public string UpdateUserName { get; set; }
+
+ /// <summary>
+ /// 杞垹闄�
+ /// </summary>
+ public bool IsDelete { get; set; }
+
+ }
+
+
diff --git a/LA24030_LuLiPackageLine_Wms/Admin.NET.Application/Service/WmsStockQuan/WmsStockQuan/WmsStockQuanService.cs b/LA24030_LuLiPackageLine_Wms/Admin.NET.Application/Service/WmsStockQuan/WmsStockQuan/WmsStockQuanService.cs
new file mode 100644
index 0000000..fe70b9d
--- /dev/null
+++ b/LA24030_LuLiPackageLine_Wms/Admin.NET.Application/Service/WmsStockQuan/WmsStockQuan/WmsStockQuanService.cs
@@ -0,0 +1,237 @@
+锘縰sing Admin.NET.Core.Service;
+using Admin.NET.Application.Entity;
+using Microsoft.AspNetCore.Http;
+using System.Data;
+using System.Web;
+using System.Text;
+namespace Admin.NET.Application;
+/// <summary>
+/// 搴撳瓨淇℃伅鏈嶅姟
+/// </summary>
+[ApiDescriptionSettings(ApplicationConst.WmsStockQuanGroupName, Order = 100)]
+public class WmsStockQuanService : IDynamicApiController, ITransient
+{
+ private readonly SqlSugarRepository<WmsStockQuan> _rep;
+ public WmsStockQuanService(SqlSugarRepository<WmsStockQuan> rep)
+ {
+ _rep = rep;
+ }
+
+ /// <summary>
+ /// 鍒嗛〉鏌ヨ搴撳瓨淇℃伅
+ /// </summary>
+ /// <param name="input"></param>
+ /// <returns></returns>
+ [HttpPost]
+ [ApiDescriptionSettings(Name = "Page")]
+ [Description("WmsStockQuan/Page")]
+ public async Task<SqlSugarPagedList<WmsStockQuanOutput>> Page(WmsStockQuanInput input)
+ {
+ var query = CommonPageFilter(input);
+ return await query.OrderBuilder(input, "", "Id").ToPagedListAsync(input.Page, input.PageSize);
+ }
+
+ /// <summary>
+ /// 涓嶅垎椤垫煡璇㈠簱瀛樹俊鎭�
+ /// </summary>
+ /// <param name="input"></param>
+ /// <returns></returns>
+ [HttpGet]
+ [ApiDescriptionSettings(Name = "List")]
+ [Description("WmsStockQuan/List")]
+ public async Task<List<WmsStockQuanOutput>> List([FromQuery] WmsStockQuanInput input)
+ {
+ var query = CommonPageFilter(input);
+ return await query.OrderBuilder(input, "", "Id").Select<WmsStockQuanOutput>().ToListAsync();
+ }
+
+ /// <summary>
+ /// 澧炲姞搴撳瓨淇℃伅
+ /// </summary>
+ /// <param name="input"></param>
+ /// <returns></returns>
+ [HttpPost]
+ [ApiDescriptionSettings(Name = "Add")]
+ [Description("WmsStockQuan/Add")]
+ public async Task<long> Add(AddWmsStockQuanInput input)
+ {
+ var entity = input.Adapt<WmsStockQuan>();
+
+ //閲嶅鎬ч獙璇�
+ await CheckExist(entity);
+
+ await _rep.InsertAsync(entity);
+ return entity.Id;
+ }
+
+ /// <summary>
+ /// 鍒犻櫎搴撳瓨淇℃伅
+ /// </summary>
+ /// <param name="input"></param>
+ /// <returns></returns>
+ [HttpPost]
+ [ApiDescriptionSettings(Name = "Delete")]
+ [Description("WmsStockQuan/Delete")]
+ public async Task Delete(DeleteWmsStockQuanInput input)
+ {
+ var entity = await _rep.GetFirstAsync(u => u.Id == input.Id) ?? throw Oops.Oh(ErrorCodeEnum.D1002);
+ //await _rep.FakeDeleteAsync(entity); //鍋囧垹闄�
+ await _rep.DeleteAsync(entity); //鐪熷垹闄�
+ }
+
+ /// <summary>
+ /// 鏇存柊搴撳瓨淇℃伅
+ /// </summary>
+ /// <param name="input"></param>
+ /// <returns></returns>
+ [HttpPost]
+ [ApiDescriptionSettings(Name = "Update")]
+ [Description("WmsStockQuan/Update")]
+ public async Task Update(UpdateWmsStockQuanInput input)
+ {
+ var entity = input.Adapt<WmsStockQuan>();
+
+ //閲嶅鎬ч獙璇�
+ await CheckExist(entity,true);
+
+ await _rep.AsUpdateable(entity).IgnoreColumns(ignoreAllNullColumns: true).ExecuteCommandAsync();
+ }
+
+ /// <summary>
+ /// 鑾峰彇搴撳瓨淇℃伅
+ /// </summary>
+ /// <param name="input"></param>
+ /// <returns></returns>
+ [HttpGet]
+ [ApiDescriptionSettings(Name = "Detail")]
+ [Description("WmsStockQuan/Detail")]
+ public async Task<WmsStockQuan> Detail([FromQuery] QueryByIdWmsStockQuanInput input)
+ {
+ return await _rep.GetFirstAsync(u => u.Id == input.Id);
+ }
+
+
+
+
+
+
+ #region 绉佹湁鏂规硶
+
+ /// <summary>
+ /// 鍏叡鏌ヨ搴撳瓨淇℃伅鏉′欢
+ /// </summary>
+ /// <param name="input"></param>
+ /// <returns></returns>
+ private ISugarQueryable<WmsStockQuanOutput> CommonPageFilter(WmsStockQuanInput input)
+ {
+ var query = _rep.AsQueryable()
+ .WhereIF(!string.IsNullOrWhiteSpace(input.SearchKey), u =>
+ u.PlaceCode.Contains(input.SearchKey.Trim())
+ || u.Upi.Contains(input.SearchKey.Trim())
+ || u.DetailName.Contains(input.SearchKey.Trim())
+ || u.PlanNo.Contains(input.SearchKey.Trim())
+ || u.OrderId.Contains(input.SearchKey.Trim())
+ || u.PackageCode.Contains(input.SearchKey.Trim())
+ || u.StockStatusName.Contains(input.SearchKey.Trim())
+ || u.OperReason.Contains(input.SearchKey.Trim())
+ || u.OperUser.Contains(input.SearchKey.Trim())
+ || u.LockReason.Contains(input.SearchKey.Trim())
+ || u.LockUser.Contains(input.SearchKey.Trim())
+ || u.Remarks.Contains(input.SearchKey.Trim())
+ || u.CreateUserName.Contains(input.SearchKey.Trim())
+ || u.UpdateUserName.Contains(input.SearchKey.Trim())
+ )
+ .WhereIF(!string.IsNullOrWhiteSpace(input.PlaceCode), u => u.PlaceCode.Contains(input.PlaceCode.Trim()))
+ .WhereIF(!string.IsNullOrWhiteSpace(input.Upi), u => u.Upi.Contains(input.Upi.Trim()))
+ .WhereIF(!string.IsNullOrWhiteSpace(input.DetailName), u => u.DetailName.Contains(input.DetailName.Trim()))
+ .WhereIF(!string.IsNullOrWhiteSpace(input.PlanNo), u => u.PlanNo.Contains(input.PlanNo.Trim()))
+ .WhereIF(!string.IsNullOrWhiteSpace(input.OrderId), u => u.OrderId.Contains(input.OrderId.Trim()))
+ .WhereIF(!string.IsNullOrWhiteSpace(input.PackageCode), u => u.PackageCode.Contains(input.PackageCode.Trim()))
+ .WhereIF(input.StockStatus.HasValue, u => u.StockStatus == input.StockStatus)
+ .WhereIF(!string.IsNullOrWhiteSpace(input.StockStatusName), u => u.StockStatusName.Contains(input.StockStatusName.Trim()))
+ .WhereIF(!string.IsNullOrWhiteSpace(input.OperReason), u => u.OperReason.Contains(input.OperReason.Trim()))
+ .WhereIF(!string.IsNullOrWhiteSpace(input.OperUser), u => u.OperUser.Contains(input.OperUser.Trim()))
+ .WhereIF(input.LockStatus.HasValue, u => u.LockStatus == input.LockStatus)
+ .WhereIF(!string.IsNullOrWhiteSpace(input.LockReason), u => u.LockReason.Contains(input.LockReason.Trim()))
+ .WhereIF(!string.IsNullOrWhiteSpace(input.LockUser), u => u.LockUser.Contains(input.LockUser.Trim()))
+ .WhereIF(!string.IsNullOrWhiteSpace(input.Remarks), u => u.Remarks.Contains(input.Remarks.Trim()))
+ .Select<WmsStockQuanOutput>();
+ if(input.InTimeRange != null && input.InTimeRange.Count >0)
+ {
+ DateTime? start= input.InTimeRange[0].Value.AddDays(-1);
+ query = query.WhereIF(start.HasValue, u => u.InTime > start);
+ if (input.InTimeRange.Count >1 && input.InTimeRange[1].HasValue)
+ {
+ var end = input.InTimeRange[1].Value.AddDays(1);
+ query = query.Where(u => u.InTime < end);
+ }
+ }
+ if(input.OperTimeRange != null && input.OperTimeRange.Count >0)
+ {
+ DateTime? start= input.OperTimeRange[0].Value.AddDays(-1);
+ query = query.WhereIF(start.HasValue, u => u.OperTime > start);
+ if (input.OperTimeRange.Count >1 && input.OperTimeRange[1].HasValue)
+ {
+ var end = input.OperTimeRange[1].Value.AddDays(1);
+ query = query.Where(u => u.OperTime < end);
+ }
+ }
+ if(input.LockTimeRange != null && input.LockTimeRange.Count >0)
+ {
+ DateTime? start= input.LockTimeRange[0].Value.AddDays(-1);
+ query = query.WhereIF(start.HasValue, u => u.LockTime > start);
+ if (input.LockTimeRange.Count >1 && input.LockTimeRange[1].HasValue)
+ {
+ var end = input.LockTimeRange[1].Value.AddDays(1);
+ query = query.Where(u => u.LockTime < end);
+ }
+ }
+ return query;
+ }
+
+ /// <summary>
+ /// 閲嶅鎬ч獙璇�
+ /// </summary>
+ /// <param name="input">楠岃瘉瀵硅薄</param>
+ /// <param name="isEdit">鏄惁鏄紪杈�</param>
+ /// <returns></returns>
+ private async Task CheckExist( WmsStockQuan input,bool isEdit=false)
+ {
+
+
+
+ //娌℃湁閰嶇疆缁勫悎鏍¢獙锛屼笉闇�瑕侀獙閲�
+
+
+ //娌℃湁閰嶇疆鍗曠嫭鏍¢獙锛屼笉闇�瑕侀獙閲�
+ }
+
+ /// <summary>
+ /// 鏍规嵁缁勫悎鏍¢獙鍜屽崟鐙牎楠岄獙璇佹暟鎹槸鍚﹀凡瀛樺湪-瀵煎叆鏃堕獙璇�
+ /// </summary>
+ /// <param name="inputs"></param>
+ /// <returns></returns>
+ private async Task CheckExisitForImport(List<WmsStockQuan> inputs)
+ {
+ if (inputs?.Count <= 0)
+ {
+ throw Oops.Oh($"瀵煎叆鏁版嵁涓嶈兘涓虹┖");
+ }
+ //鏍规嵁缁勫悎鏍¢獙楠岃瘉琛ㄦ牸涓腑鏄惁宸插瓨鍦ㄧ浉鍚屾暟鎹�
+
+
+
+
+
+
+
+
+ //鏍规嵁鍗曠嫭鏍¢獙楠岃瘉琛ㄦ牸涓腑鏄惁宸插瓨鍦ㄧ浉鍚屾暟鎹�
+
+
+
+ }
+ #endregion
+
+}
+
diff --git a/SDA/iWareSda/Devices/4-Station/StationModel/DB/RgvComm.cs b/SDA/iWareSda/Devices/4-Station/StationModel/DB/RgvComm.cs
index 5740ee1..520c357 100644
--- a/SDA/iWareSda/Devices/4-Station/StationModel/DB/RgvComm.cs
+++ b/SDA/iWareSda/Devices/4-Station/StationModel/DB/RgvComm.cs
@@ -388,6 +388,19 @@
/// </summary>
[Description("鏈哄櫒浜哄嚭搴撳簱浣嶅彿")]
public string R_OutboundNumber { get; set; }
+
+
+ /// <summary>
+ /// 鍏ュ簱浠诲姟鍙�
+ /// </summary>
+ [Description("鍏ュ簱浠诲姟鍙�")]
+ public short R_Inbound_TaskID { get; set; }
+
+ /// <summary>
+ /// 鍑哄簱浠诲姟鍙�
+ /// </summary>
+ [Description("鍑哄簱浠诲姟鍙�")]
+ public short R_Outbound_TaskID { get; set; }
}
public class StationDBForReadComm
diff --git a/SDA/iWareSda/Devices/4-Station/StationModel/StationEntity.cs b/SDA/iWareSda/Devices/4-Station/StationModel/StationEntity.cs
index 7cd2b86..368ac29 100644
--- a/SDA/iWareSda/Devices/4-Station/StationModel/StationEntity.cs
+++ b/SDA/iWareSda/Devices/4-Station/StationModel/StationEntity.cs
@@ -234,7 +234,7 @@
}
- public bool InboundFinishConfirm(string stationCode, out string msg)
+ public bool InboundFinishConfirm(string stationCode, bool value, out string msg)
{
try
{
@@ -242,10 +242,10 @@
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_InboundFinishConfirm, true, view_stationObj.W_DataFinish);
+ MessageModel b2 = this.plcService.WriteValuePoint(stationObj.W_InboundFinishConfirm, value, view_stationObj.W_DataFinish);
if (!b2.result)
{
- msg = string.Format("鍚慡tation鍦板潃{0} 鍏ュ簱瀹屾垚纭 鍐� " + true + "澶辫触,杩斿洖缁撴灉:" + b2.resMsg,
+ msg = string.Format("鍚慡tation鍦板潃{0} 鍏ュ簱瀹屾垚纭 鍐� " + value + "澶辫触,杩斿洖缁撴灉:" + b2.resMsg,
stationObj.W_InboundFinishConfirm);
return false;
}
@@ -262,7 +262,7 @@
}
}
- public bool OutboundFinishConfirm(string stationCode, out string msg)
+ public bool OutboundFinishConfirm(string stationCode, bool value, out string msg)
{
try
{
@@ -270,10 +270,10 @@
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);
+ MessageModel b2 = this.plcService.WriteValuePoint(stationObj.W_OutboundFinishConfirm, value, view_stationObj.W_OutboundFinishConfirm);
if (!b2.result)
{
- msg = string.Format("鍚慡tation 鍑哄簱浠诲姟瀹屾垚纭 鍦板潃{0} 鍐� " + true + "澶辫触,杩斿洖缁撴灉:" + b2.resMsg,
+ msg = string.Format("鍚慡tation 鍑哄簱浠诲姟瀹屾垚纭 鍦板潃{0} 鍐� " + value + "澶辫触,杩斿洖缁撴灉:" + b2.resMsg,
stationObj.W_OutboundFinishConfirm);
return false;
}
@@ -298,16 +298,8 @@
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_DataFinish, true, view_stationObj.W_DataFinish);
- if (!b2.result)
- {
- 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);
+ MessageModel 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,
@@ -345,6 +337,16 @@
return false;
}
+
+ b2 = this.plcService.WriteValuePoint(stationObj.W_DataFinish, true, view_stationObj.W_DataFinish);
+ if (!b2.result)
+ {
+ msg = string.Format("鍚慡tation鍦板潃{0} 鍐� 璇荤爜瑙f瀽瀹屾垚 " + true + "澶辫触,杩斿洖缁撴灉:" + b2.resMsg,
+ stationObj.W_DataFinish);
+ return false;
+ }
+
+
return true;
}
catch (Exception ex)
diff --git a/SDA/iWareSda/Devices/4-Station/StationModel/Station_CacheEntity.cs b/SDA/iWareSda/Devices/4-Station/StationModel/Station_CacheEntity.cs
index 2a7b2ef..61b8c06 100644
--- a/SDA/iWareSda/Devices/4-Station/StationModel/Station_CacheEntity.cs
+++ b/SDA/iWareSda/Devices/4-Station/StationModel/Station_CacheEntity.cs
@@ -165,8 +165,8 @@
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_Inbound_TaskID = W_DBHeaderWithSeparate_BZ39 + "20.0",
+ W_Outbound_TaskID = W_DBHeaderWithSeparate_BZ39 + "22.0",
W_Length = W_DBHeaderWithSeparate_BZ39 + "6.0",
W_Width = W_DBHeaderWithSeparate_BZ39 + "8.0",
@@ -176,7 +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锛�?杩樻病鏈夐厤缃憿
+ W_OutboundFinishConfirm = W_DBHeaderWithSeparate_BZ39 + "0.2"
});
@@ -213,15 +213,15 @@
{
StationCode = StationLocationEnum.BZ39.ToString(),
- R_ReqParseData = W_DBHeaderWithSeparate_BZ39 + "0.0",
+ R_ReqParseData = W_DBHeaderWithSeparate_BZ39 + "50.0",
R_InboundFinish = W_DBHeaderWithSeparate_BZ39 + "50.1",
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_Inbound_TaskID = W_DBHeaderWithSeparate_BZ39 + "",//TODO锛�?杩樻病鏈夐厤缃憿
- R_Outbound_TaskID = W_DBHeaderWithSeparate_BZ39 + "",//TODO锛�?杩樻病鏈夐厤缃憿
+ R_Inbound_TaskID = W_DBHeaderWithSeparate_BZ39 + "112.0",
+ R_Outbound_TaskID = W_DBHeaderWithSeparate_BZ39 + "114.0",
});
diff --git a/SDA/iWareSda/Devices/4-Station/StationService/IStationService.cs b/SDA/iWareSda/Devices/4-Station/StationService/IStationService.cs
index b6b350d..ab94395 100644
--- a/SDA/iWareSda/Devices/4-Station/StationService/IStationService.cs
+++ b/SDA/iWareSda/Devices/4-Station/StationService/IStationService.cs
@@ -99,7 +99,7 @@
/// <param name="value"></param>
/// <returns></returns>
[OperationContract]
- SdaResEntity InboundFinishConfirm(int deviceId, string stationCode);
+ SdaResEntity InboundFinishConfirm(int deviceId, bool value, string stationCode);
/// <summary>
/// 鍑哄簱瀹屾垚宸茬‘璁�
@@ -108,7 +108,7 @@
/// <param name="value"></param>
/// <returns></returns>
[OperationContract]
- SdaResEntity OutboundFinishConfirm(int deviceId, string stationCode);
+ SdaResEntity OutboundFinishConfirm(int deviceId, bool value, string stationCode);
/// <summary>
/// 鍐欏叆鍏ュ簱浠诲姟淇℃伅
diff --git a/SDA/iWareSda/Devices/4-Station/StationService/StationService.cs b/SDA/iWareSda/Devices/4-Station/StationService/StationService.cs
index 6abd3ce..90b9047 100644
--- a/SDA/iWareSda/Devices/4-Station/StationService/StationService.cs
+++ b/SDA/iWareSda/Devices/4-Station/StationService/StationService.cs
@@ -444,7 +444,7 @@
/// <param name="deviceId"></param>
/// <param name="value"></param>
/// <returns></returns>
- public SdaResEntity InboundFinishConfirm(int deviceId, string stationCode)
+ public SdaResEntity InboundFinishConfirm(int deviceId, bool value, string stationCode)
{
SdaResEntity _SdaResEntity = new SdaResEntity();
try
@@ -457,7 +457,7 @@
var Station = StationResult.resData as StationEntity;
string msg = "";
- var result = Station.InboundFinishConfirm(stationCode, out msg);
+ var result = Station.InboundFinishConfirm(stationCode, value, out msg);
_SdaResEntity.result = result;
_SdaResEntity.resMsg = msg;
return _SdaResEntity;
@@ -476,7 +476,7 @@
/// <param name="deviceId"></param>
/// <param name="value"></param>
/// <returns></returns>
- public SdaResEntity OutboundFinishConfirm(int deviceId, string stationCode)
+ public SdaResEntity OutboundFinishConfirm(int deviceId, bool value, string stationCode)
{
SdaResEntity _SdaResEntity = new SdaResEntity();
try
@@ -489,7 +489,7 @@
var Station = StationResult.resData as StationEntity;
string msg = "";
- var result = Station.OutboundFinishConfirm(stationCode, out msg);
+ var result = Station.OutboundFinishConfirm(stationCode, value, out msg);
_SdaResEntity.result = result;
_SdaResEntity.resMsg = msg;
return _SdaResEntity;
--
Gitblit v1.9.3