From de11618a6c41d627acd733a6b5d818d87d291c1e Mon Sep 17 00:00:00 2001
From: schangxiang@126.com <schangxiang@126.com>
Date: 周六, 14 12月 2024 13:34:13 +0800
Subject: [PATCH] 222
---
CC/iWareModel/EnumType/WMS/StockStatusEnum.cs | 8 +
LA24030_LuLiPackageLine_Wms/Admin.NET.Application/Service/WmsOperationTask/WmsOperationTaskService.cs | 67 ++++++++++++++++
SDA/iWareSda/Devices/4-Station/StationModel/DB/Items/Read/StationDB2ObjForReadComm.cs | 7 +
LA24030_LuLiPackageLine_Web/src/views/main/WmsOrder/packList/index.vue | 43 ++++++++++
LA24030_LuLiPackageLine_Wms/Admin.NET.Application/Enum/ReportCenter/StockStatusEnum.cs | 8 +
LA24030_LuLiPackageLine_Wms/Admin.NET.Application/Service/WmsCommonnQuery/Dto/WmsCommonnQueryInput.cs | 33 -------
CC/iWareCC_ASRS/Connected Services/StationService/Reference.cs | 16 ++++
CC/iWareCC_ASRS/Connected Services/StationService/item4.xsd | 1
SDA/iWareSda/Devices/4-Station/StationModel/DB/Items/Read/StationDBForReadComm.cs | 6 +
LA24030_LuLiPackageLine_Pda/manifest.json | 4
LA24030_LuLiPackageLine_Wms/Admin.NET.Application/Service/WmsOperationTask/Dto/PersonOutboundInput.cs | 19 ++++
SDA/iWareSda/Devices/4-Station/StationModel/Station_CacheEntity.cs | 1
12 files changed, 175 insertions(+), 38 deletions(-)
diff --git a/CC/iWareCC_ASRS/Connected Services/StationService/Reference.cs b/CC/iWareCC_ASRS/Connected Services/StationService/Reference.cs
index dc6c507..eda9d72 100644
--- a/CC/iWareCC_ASRS/Connected Services/StationService/Reference.cs
+++ b/CC/iWareCC_ASRS/Connected Services/StationService/Reference.cs
@@ -976,6 +976,9 @@
private bool R_OutboundFinishField;
[System.Runtime.Serialization.OptionalFieldAttribute()]
+ private bool R_OutboundModeField;
+
+ [System.Runtime.Serialization.OptionalFieldAttribute()]
private string R_OutboundNumberField;
[System.Runtime.Serialization.OptionalFieldAttribute()]
@@ -1174,6 +1177,19 @@
}
[System.Runtime.Serialization.DataMemberAttribute()]
+ public bool R_OutboundMode {
+ get {
+ return this.R_OutboundModeField;
+ }
+ set {
+ if ((this.R_OutboundModeField.Equals(value) != true)) {
+ this.R_OutboundModeField = value;
+ this.RaisePropertyChanged("R_OutboundMode");
+ }
+ }
+ }
+
+ [System.Runtime.Serialization.DataMemberAttribute()]
public string R_OutboundNumber {
get {
return this.R_OutboundNumberField;
diff --git a/CC/iWareCC_ASRS/Connected Services/StationService/item4.xsd b/CC/iWareCC_ASRS/Connected Services/StationService/item4.xsd
index 2b6978a..d1140b2 100644
--- a/CC/iWareCC_ASRS/Connected Services/StationService/item4.xsd
+++ b/CC/iWareCC_ASRS/Connected Services/StationService/item4.xsd
@@ -89,6 +89,7 @@
<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_OutboundMode" 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_PalletizingAck" type="xs:boolean" />
diff --git a/CC/iWareModel/EnumType/WMS/StockStatusEnum.cs b/CC/iWareModel/EnumType/WMS/StockStatusEnum.cs
index 1c4b6bb..944d016 100644
--- a/CC/iWareModel/EnumType/WMS/StockStatusEnum.cs
+++ b/CC/iWareModel/EnumType/WMS/StockStatusEnum.cs
@@ -37,7 +37,13 @@
/// 浜哄伐寮哄埗浠诲姟宸插垱寤�
/// </summary>
[Description("浜哄伐寮哄埗浠诲姟宸插垱寤�")]
- 浜哄伐寮哄埗浠诲姟宸插垱寤� = 5
+ 浜哄伐寮哄埗浠诲姟宸插垱寤� = 5,
+
+ /// <summary>
+ /// 浜哄伐榻愬寘鍑哄簱浠诲姟宸插垱寤�
+ /// </summary>
+ [Description("浜哄伐榻愬寘鍑哄簱浠诲姟宸插垱寤�")]
+ 浜哄伐榻愬寘鍑哄簱浠诲姟宸插垱寤� = 6
}
/// <summary>
diff --git a/LA24030_LuLiPackageLine_Pda/manifest.json b/LA24030_LuLiPackageLine_Pda/manifest.json
index 333361a..1ce6253 100644
--- a/LA24030_LuLiPackageLine_Pda/manifest.json
+++ b/LA24030_LuLiPackageLine_Pda/manifest.json
@@ -1,8 +1,8 @@
{
"name" : "LuLiMuYe_Package_Pda",
"appid" : "__UNI__28D87EB",
- "description" : "2024.12.12",
- "versionName" : "1.0.3",
+ "description" : "2024.12.14",
+ "versionName" : "1.0.4",
"versionCode" : "100",
"transformPx" : false,
"app-plus" : {
diff --git a/LA24030_LuLiPackageLine_Web/src/views/main/WmsOrder/packList/index.vue b/LA24030_LuLiPackageLine_Web/src/views/main/WmsOrder/packList/index.vue
index 1671ea0..e2b6d94 100644
--- a/LA24030_LuLiPackageLine_Web/src/views/main/WmsOrder/packList/index.vue
+++ b/LA24030_LuLiPackageLine_Web/src/views/main/WmsOrder/packList/index.vue
@@ -87,6 +87,7 @@
<el-button type="primary" icon="ele-Search" @click="handleQuery"> 鏌ヨ </el-button>
<el-button icon="ele-Refresh" @click="() => (queryParams = {})"> 閲嶇疆 </el-button>
+ <el-button icon="ele-Finished" @click="clickOutForQiBao"> 榻愬寘鍑哄簱 </el-button>
<el-button icon="ele-Finished" @click="clickOut"> 寮哄埗鍑哄簱 </el-button>
<!-- <el-button icon="ele-ZoomIn" @click="changeAdvanceQueryUI" v-if="!showAdvanceQueryUI" style="margin-left: 5px"> 楂樼骇鏌ヨ </el-button>
@@ -103,7 +104,12 @@
<div class="left-table">
<p class="text-xtiny">榻愬寘鍒楄〃</p>
- <el-table :data="tableData" style="width: 100%" v-loading="loading" tooltip-effect="light" ref="tableRef" row-key="id" @sort-change="sortChange" :summary-method="getExportTitle" border="">
+ <el-table :data="tableData" style="width: 100%" v-loading="loading" tooltip-effect="light"
+ ref="tableRef" row-key="id"
+ @selection-change="handleSelectionChangeForQiBao"
+ @sort-change="sortChange"
+ :summary-method="getExportTitle" border="">
+ <el-table-column align="center" width="60" type="selection" />
<el-table-column type="index" label="搴忓彿" width="55" align="center" />
<!-- <el-table-column prop="packageCode" label="鍖呰鍙�" show-overflow-tooltip="" /> -->
<el-table-column label="鍖呰鍙�" prop="packageCode" width="150" align="left" show-overflow-tooltip>
@@ -205,6 +211,7 @@
downloadExcelTemplateWmsOrderPurchaseAll,
packList,
ForceOutbound,
+ PersonOutbound
} from '/@/api/main/WmsOrder/wmsOrderPurchase';
import { handleSlectDataWmsBusinessType } from '/@/utils/selectData';
import { getAPI } from '/@/utils/axios-utils';
@@ -466,6 +473,14 @@
};
//閫変腑鐨勮
+const checkRowsForQiBao = ref<{ id: number }[]>([]);
+
+// 閫夋嫨
+const handleSelectionChangeForQiBao = (val: any) => {
+ checkRowsForQiBao.value = val;
+};
+
+//閫変腑鐨勮
const checkRows = ref<{ id: number }[]>([]);
// 閫夋嫨
@@ -473,6 +488,30 @@
checkRows.value = val;
};
+const clickOutForQiBao = () => {
+ var PackageCodeList = checkRowsForQiBao.value.map((x: any) => x.packageCode);
+ if (PackageCodeList.length == 0) {
+ ElMessage.error('璇烽�夋嫨闇�瑕侀綈鍖呭嚭搴撶殑璁㈠崟锛�');
+ return;
+ }
+ ElMessageBox.confirm('鏄惁纭榻愬寘鍑哄簱锛�', '鎻愮ず', {
+ confirmButtonText: '纭',
+ cancelButtonText: '鍙栨秷',
+ type: 'warning',
+ })
+ .then(async () => {
+ loading.value = true;
+ var res = await PersonOutbound(
+ {
+ "PackageCodeList": PackageCodeList
+ }
+ );
+ handleQuery();
+ ElMessage.success('榻愬寘鍑哄簱璇锋眰鎴愬姛');
+ loading.value = false;
+ })
+ .catch(() => ElMessage.info('宸插彇娑�'));
+};
const clickOut = () => {
var PackageCodeList = checkRows.value.map((x: any) => x.packageCode);
if (PackageCodeList.length == 0) {
@@ -492,7 +531,7 @@
}
);
handleQuery();
- ElMessage.success('寮哄埗鍑哄簱鎴愬姛');
+ ElMessage.success('寮哄埗鍑哄簱璇锋眰鎴愬姛');
loading.value = false;
})
.catch(() => ElMessage.info('宸插彇娑�'));
diff --git a/LA24030_LuLiPackageLine_Wms/Admin.NET.Application/Enum/ReportCenter/StockStatusEnum.cs b/LA24030_LuLiPackageLine_Wms/Admin.NET.Application/Enum/ReportCenter/StockStatusEnum.cs
index 18bd9ef..b688a95 100644
--- a/LA24030_LuLiPackageLine_Wms/Admin.NET.Application/Enum/ReportCenter/StockStatusEnum.cs
+++ b/LA24030_LuLiPackageLine_Wms/Admin.NET.Application/Enum/ReportCenter/StockStatusEnum.cs
@@ -34,7 +34,13 @@
/// 浜哄伐寮哄埗浠诲姟宸插垱寤�
/// </summary>
[Description("浜哄伐寮哄埗浠诲姟宸插垱寤�")]
- 浜哄伐寮哄埗浠诲姟宸插垱寤� = 5
+ 浜哄伐寮哄埗浠诲姟宸插垱寤� = 5,
+
+ /// <summary>
+ /// 浜哄伐榻愬寘鍑哄簱浠诲姟宸插垱寤�
+ /// </summary>
+ [Description("浜哄伐榻愬寘鍑哄簱浠诲姟宸插垱寤�")]
+ 浜哄伐榻愬寘鍑哄簱浠诲姟宸插垱寤� = 6
}
diff --git a/LA24030_LuLiPackageLine_Wms/Admin.NET.Application/Service/WmsCommonnQuery/Dto/WmsCommonnQueryInput.cs b/LA24030_LuLiPackageLine_Wms/Admin.NET.Application/Service/WmsCommonnQuery/Dto/WmsCommonnQueryInput.cs
index 6b4a29c..cd52d53 100644
--- a/LA24030_LuLiPackageLine_Wms/Admin.NET.Application/Service/WmsCommonnQuery/Dto/WmsCommonnQueryInput.cs
+++ b/LA24030_LuLiPackageLine_Wms/Admin.NET.Application/Service/WmsCommonnQuery/Dto/WmsCommonnQueryInput.cs
@@ -7,43 +7,16 @@
namespace Admin.NET.Application.Service.WmsCommonnQuery.Dto;
/// <summary>
-/// 搴撳瓨淇℃伅鍒嗛〉鏌ヨ杈撳叆鍙傛暟
+/// 缂撳瓨宀涢綈鍖呮煡璇㈣緭鍏ュ弬鏁�
/// </summary>
-public class PackListInput : BasePageInput
+public class PackListInput
{
- /// <summary>
- /// 鍏抽敭瀛楁煡璇�
- /// </summary>
- public string? SearchKey { get; set; }
/// <summary>
- /// 鏄惁榻愬
+ /// 鏄惁榻愬寘
/// </summary>
public bool? IsPack { 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; }
public string PackageCode { get; set; }
}
diff --git a/LA24030_LuLiPackageLine_Wms/Admin.NET.Application/Service/WmsOperationTask/Dto/PersonOutboundInput.cs b/LA24030_LuLiPackageLine_Wms/Admin.NET.Application/Service/WmsOperationTask/Dto/PersonOutboundInput.cs
new file mode 100644
index 0000000..148467f
--- /dev/null
+++ b/LA24030_LuLiPackageLine_Wms/Admin.NET.Application/Service/WmsOperationTask/Dto/PersonOutboundInput.cs
@@ -0,0 +1,19 @@
+锘縰sing Admin.NET.Core;
+using System.ComponentModel.DataAnnotations;
+
+namespace Admin.NET.Application;
+
+/// <summary>
+/// 浜哄伐榻愬寘鍑哄簱杈撳叆鍙傛暟
+/// </summary>
+public class PersonOutboundInput
+{
+
+ /// <summary>
+ /// 鍖呰鍙烽泦鍚�
+ /// </summary>
+ public virtual List<string> PackageCodeList { get; set; }
+
+}
+
+
diff --git a/LA24030_LuLiPackageLine_Wms/Admin.NET.Application/Service/WmsOperationTask/WmsOperationTaskService.cs b/LA24030_LuLiPackageLine_Wms/Admin.NET.Application/Service/WmsOperationTask/WmsOperationTaskService.cs
index e698432..d61602b 100644
--- a/LA24030_LuLiPackageLine_Wms/Admin.NET.Application/Service/WmsOperationTask/WmsOperationTaskService.cs
+++ b/LA24030_LuLiPackageLine_Wms/Admin.NET.Application/Service/WmsOperationTask/WmsOperationTaskService.cs
@@ -8,6 +8,7 @@
using Microsoft.CodeAnalysis.Operations;
using Admin.NET.Application.Service.WmsTask.WmsRbLineTask.Dto;
using Furion.DatabaseAccessor;
+using Admin.NET.Application.Service.WmsCommonnQuery.Dto;
namespace Admin.NET.Application;
/// <summary>
@@ -26,6 +27,7 @@
private readonly SqlSugarRepository<WmsRecordPackageProcess> _wmsRecordPackageProcessRep;
private readonly SqlSugarRepository<Mes_Upi_LineQueue> _mes_Upi_LineQueueRep;
private readonly SqlSugarRepository<WmsRecordUpiNg> _wmsRecordUpiNgRep;
+ private readonly WmsCommonnQueryService _wmsCommonnQueryService;
public WmsOperationTaskService(
SqlSugarRepository<Mes_Upi_LineQueue> mes_Upi_LineQueueRep,
@@ -37,8 +39,10 @@
, SqlSugarRepository<WmsRecordUpiProcess> wmsRecordUpiProcessRep
, SqlSugarRepository<WmsRecordPackageProcess> wmsRecordPackageProcessRep
, SqlSugarRepository<WmsRecordUpiNg> wmsRecordUpiNgRep
+ , WmsCommonnQueryService wmsCommonnQueryService
)
{
+ _wmsCommonnQueryService = wmsCommonnQueryService;
_wmsRecordUpiNgRep = wmsRecordUpiNgRep;
_sysConfigRep = sysConfigRep;
_mesPackageGatherRep = mesPackageGatherRep;
@@ -68,14 +72,23 @@
{
throw Oops.Oh("鍙傛暟涓嶈兘涓虹┖");
}
+ //楠岃瘉浼犻�掔殑鍖呮槸鍚﹂兘鍦ㄩ綈鍖呬箣鍐呫��
+ List<WmsPackListOutput> packList = await _wmsCommonnQueryService.PackList(new Service.WmsCommonnQuery.Dto.PackListInput() { IsPack = false });
+
List<WmsStockQuan> updateQuanList = new List<WmsStockQuan>();
foreach (var item in input.PackageCodeList)
{
+ var isExistCount = packList.Where(x => x.PackageCode == item).Count();
+ if (isExistCount == 0)
+ {
+ throw Oops.Oh($"鍖厈item}涓嶆槸缂哄寘鐘舵�侊紝璇锋鏌ワ紒");
+ }
+
var quanList = await _wmsStockQuanRep.AsQueryable().Where(x => x.PackageCode == item).ToListAsync();
- var isExist = quanList.Where(x => x.StockStatus == StockStatusEnum.榻愬寘寰呭嚭搴�).Count();
+ var isExist = quanList.Where(x => x.StockStatus == StockStatusEnum.榻愬寘寰呭嚭搴� || x.StockStatus == StockStatusEnum.浜哄伐榻愬寘鍑哄簱浠诲姟宸插垱寤�).Count();
if (isExist > 0)
{
- throw Oops.Oh($"鍖厈item}涓叾涓湁鏉跨姸鎬佹槸'{StockStatusEnum.榻愬寘寰呭嚭搴�.ToString()}'锛屼笉鍏佽寮哄埗鍑哄簱");
+ throw Oops.Oh($"鍖厈item}涓叾涓湁鏉跨姸鎬佹槸'{StockStatusEnum.榻愬寘寰呭嚭搴�.ToString()}' 鎴�'{StockStatusEnum.浜哄伐榻愬寘鍑哄簱浠诲姟宸插垱寤�.ToString()}'锛屼笉鍏佽寮哄埗鍑哄簱");
}
//鏇存柊鐘舵��
@@ -93,6 +106,56 @@
}
+
+ /// <summary>
+ /// 浜哄伐榻愬寘鍑哄簱
+ /// </summary>
+ /// <param name="input"></param>
+ /// <returns></returns>
+ [HttpPost]
+ [ApiDescriptionSettings(Name = "PersonOutbound")]
+ [Description("WmsOperationTask/PersonOutbound")]
+ [UnitOfWork]
+ public async Task PersonOutbound(PersonOutboundInput input)
+ {
+ if (input == null || input.PackageCodeList?.Count == 0)
+ {
+ throw Oops.Oh("鍙傛暟涓嶈兘涓虹┖");
+ }
+ //楠岃瘉浼犻�掔殑鍖呮槸鍚﹂兘鍦ㄩ綈鍖呬箣鍐呫��
+ List<WmsPackListOutput> packList = await _wmsCommonnQueryService.PackList(new Service.WmsCommonnQuery.Dto.PackListInput() { IsPack = true });
+
+ List<WmsStockQuan> updateQuanList = new List<WmsStockQuan>();
+ foreach (var item in input.PackageCodeList)
+ {
+ var isExistCount = packList.Where(x => x.PackageCode == item).Count();
+ if (isExistCount == 0)
+ {
+ throw Oops.Oh($"鍖厈item}涓嶆槸榻愬寘鐘舵�侊紝璇锋鏌ワ紒");
+ }
+
+ var quanList = await _wmsStockQuanRep.AsQueryable().Where(x => x.PackageCode == item).ToListAsync();
+ var isExist = quanList.Where(x => x.StockStatus == StockStatusEnum.浜哄伐寮哄埗寰呭嚭搴� || x.StockStatus == StockStatusEnum.浜哄伐寮哄埗浠诲姟宸插垱寤�).Count();
+ if (isExist > 0)
+ {
+ throw Oops.Oh($"鍖厈item}涓叾涓湁鏉跨姸鎬佹槸'{StockStatusEnum.浜哄伐寮哄埗寰呭嚭搴�.ToString()}'鎴�'{StockStatusEnum.浜哄伐寮哄埗浠诲姟宸插垱寤�.ToString()}'锛屼笉鍏佽浜哄伐榻愬寘鍑哄簱");
+ }
+
+ //鏇存柊鐘舵��
+ foreach (var quan in quanList)
+ {
+ quan.StockStatus = StockStatusEnum.榻愬寘寰呭嚭搴�;
+ quan.StockStatusName = StockStatusEnum.榻愬寘寰呭嚭搴�.ToString();
+ quan.UpdateTime = DateTime.Now;
+ quan.OperReason = "浜哄伐榻愬寘鍑哄簱";
+ }
+ updateQuanList.AddRange(quanList);
+ }
+
+ await _wmsStockQuanRep.UpdateRangeAsync(updateQuanList);
+
+ }
+
/// <summary>
/// 鍒ゆ柇榻愬
/// </summary>
diff --git a/SDA/iWareSda/Devices/4-Station/StationModel/DB/Items/Read/StationDB2ObjForReadComm.cs b/SDA/iWareSda/Devices/4-Station/StationModel/DB/Items/Read/StationDB2ObjForReadComm.cs
index d0a21f5..fd04711 100644
--- a/SDA/iWareSda/Devices/4-Station/StationModel/DB/Items/Read/StationDB2ObjForReadComm.cs
+++ b/SDA/iWareSda/Devices/4-Station/StationModel/DB/Items/Read/StationDB2ObjForReadComm.cs
@@ -155,6 +155,13 @@
/// </summary>
[Description("寮哄埗鍑哄簱妯″紡")]
public bool R_ForceOutboundMode { get; set; }
+
+ /// <summary>
+ /// 鍑哄簱妯″紡
+ /// </summary>
+ [Description("鍑哄簱妯″紡")]
+ public bool R_OutboundMode { get; set; }
+
/// <summary>
/// 鍚堝寘浠诲姟瀹屾垚
/// </summary>
diff --git a/SDA/iWareSda/Devices/4-Station/StationModel/DB/Items/Read/StationDBForReadComm.cs b/SDA/iWareSda/Devices/4-Station/StationModel/DB/Items/Read/StationDBForReadComm.cs
index e3dd4df..75dc6e0 100644
--- a/SDA/iWareSda/Devices/4-Station/StationModel/DB/Items/Read/StationDBForReadComm.cs
+++ b/SDA/iWareSda/Devices/4-Station/StationModel/DB/Items/Read/StationDBForReadComm.cs
@@ -98,6 +98,12 @@
public string R_ForceOutboundMode { get; set; }
/// <summary>
+ /// 鍑哄簱妯″紡
+ /// </summary>
+ [Description("鍑哄簱妯″紡")]
+ public string R_OutboundMode { get; set; }
+
+ /// <summary>
/// 鍚堝寘浠诲姟瀹屾垚
/// </summary>
[Description("鍚堝寘浠诲姟瀹屾垚")]
diff --git a/SDA/iWareSda/Devices/4-Station/StationModel/Station_CacheEntity.cs b/SDA/iWareSda/Devices/4-Station/StationModel/Station_CacheEntity.cs
index 73e615f..7449b15 100644
--- a/SDA/iWareSda/Devices/4-Station/StationModel/Station_CacheEntity.cs
+++ b/SDA/iWareSda/Devices/4-Station/StationModel/Station_CacheEntity.cs
@@ -317,6 +317,7 @@
R_Outbound_TaskID = W_DBHeaderWithSeparate_BZ39 + "114.0",
R_ForceOutboundMode = W_DBHeaderWithSeparate_BZ39 + "50.3",
+ R_OutboundMode = W_DBHeaderWithSeparate_BZ39 + "50.5",
});
--
Gitblit v1.9.3