From 38d24bdd00d8dd9e416fc5988831ec4b62e696ca Mon Sep 17 00:00:00 2001
From: yuyou_x <2336760928@qq.com>
Date: 星期三, 06 三月 2024 09:39:30 +0800
Subject: [PATCH] 合并数据
---
Pda/View/SoSetting/productOut.html | 173 +++++++++++++++++--
HTML/views/SOSetting/ComBoxInfo.html | 1
Wms/Wms/Controllers/PdaSoController.cs | 54 +++++
Wms/WMS.BLL/BllPdaServer/PdaSoServer.cs | 265 ++++++++++++++++++++++++++++-
Wms/WMS.IBLL/IPdaServer/IPdaSoServer.cs | 12 +
5 files changed, 471 insertions(+), 34 deletions(-)
diff --git a/HTML/views/SOSetting/ComBoxInfo.html b/HTML/views/SOSetting/ComBoxInfo.html
index e127a6b..187ee4d 100644
--- a/HTML/views/SOSetting/ComBoxInfo.html
+++ b/HTML/views/SOSetting/ComBoxInfo.html
@@ -97,6 +97,7 @@
// 琛ㄥ崟闇�瑕佺殑鍙橀噺
var infoOptions = {
elem: '#LAY-app-content-list',
+ // height: h1,
height: 'full-100',
id: 'LAY-app-content-list',
page: true,
diff --git a/Pda/View/SoSetting/productOut.html b/Pda/View/SoSetting/productOut.html
index dbc2b7b..78e1a8b 100644
--- a/Pda/View/SoSetting/productOut.html
+++ b/Pda/View/SoSetting/productOut.html
@@ -471,14 +471,14 @@
</div>
</div>
<div class="layui-form-item layout-input" style="display: flex; justify-content: space-between;">
- <div style="width: 48%;">
+ <div style="width: 49%;">
<label class="layui-form-label" style="width: 34%;">鍑哄簱鍙o細</label>
- <div class="layui-input-block" style="width: 66%;margin-left:34%;">
+ <div class="layui-input-block" style="width: 62%;margin-left:34%;">
<input id="outModel2" type="text" lay-verify="" disabled placeholder=""
class="layui-input" > <!-- style="border: 0px;" -->
</div>
</div>
- <div style="width: 48%;">
+ <div style="width: 49%;">
<label class="layui-form-label" style="width: 70px;">宸叉嫞鏁伴噺锛�</label>
<div class="layui-input-block" style="width: 120px; margin-left:70px;">
<input id="pickedQty2" type="text" lay-verify="" disabled
@@ -519,8 +519,8 @@
</div>
<div class="layout-tbl-paging" id="">
- <table id="tableBoxList" class="tbl-box-list" border="" cellspacing="" cellpadding="">
- <tr id="tableHead">
+ <table id="tableBoxList2" class="tbl-box-list" border="" cellspacing="" cellpadding="">
+ <tr id="tableHead2">
<th style="width: 54%;">鐗╂枡缂栫爜</th>
<th style="width: 20%;">鎵樺唴<br>鏁伴噺</th>
<th style="width: 20%;">宸叉嫞<br>鏁伴噺</th>
@@ -528,9 +528,9 @@
<!-- <th style="width: 8%;">鎷h揣</th> -->
</tr>
<tr id="boxCell2" style="display: none;">
- <td name="SkuNo2">AG000001</td>
- <td name="qty2">30</td>
- <td name="pickedQty2">30</td>
+ <td name="SkuNo">AG000001</td>
+ <td name="Qty">30</td>
+ <td name="pickedQty">30</td>
</tr>
</table>
@@ -600,6 +600,7 @@
//鏄惁鏁存墭鎷h揣
var isContinue = "0";
var tableData = null
+ var tableData2 = null
var canPickBox = true
$("#palletNo").focus();//鍏夋爣榛樿閫変腑
@@ -1191,14 +1192,17 @@
synData(IP + "/PdaSo/IsEnableOkPalletNo", param, 'post', function (res) {
if (res.code == 0) { //鎴愬姛
updateBillList2();
- if ($('#bar').val() == "") {
+ console.log($('#bar2').val())
+ if ($('#bar2').val() == "") {
+ console.log(1)
clear21();
return;
} else {
+ console.log(2)
updateSkuLotNoList2();
updateQtyList2();
getBar2();
- GetBoxInfo();
+ GetDataInfo();
}
} else { //涓嶆垚鍔�
@@ -1250,10 +1254,20 @@
if (res.code == 0) { //鎴愬姛
for (var i = 0; i < res.data.length; i++) {
if (i == 0) {
- $("#skuLotNo2").append('<option value =' + res.data[i].SoDetailId + ' selected>' + res.data[i].SkuName + " - " + res.data[i].LotNo + '</option>');
+ $("#skuLotNo2").append('<option value =' + res.data[i].SoDetailId + ' selected>' + res.data[i].SkuName);
+ if(res.data[i].LotNo == null)
+ {
+ $("#skuLotNo2").append(" - " + res.data[i].LotNo);
+ }
+ $("#skuLotNo2").append('</option>');
} else {
- $("#skuLotNo2").append('<option value =' + res.data[i].SoDetailId + '>' + res.data[i].SkuName + " - " + res.data[i].LotNo + '</option>');
+ $("#skuLotNo2").append('<option value =' + res.data[i].SoDetailId + '>' + res.data[i].SkuName);
+ if(res.data[i].LotNo == null)
+ {
+ $("#skuLotNo2").append(" - " + res.data[i].LotNo);
+ }
+ $("#skuLotNo2").append('</option>');
}
}
form.render('select');
@@ -1302,7 +1316,7 @@
$('#outModel2').val(res.data.OutModel);
$('#standard2').val(res.data.Standard);
- $('#pickQty2').val(res.data.PickQty);
+ $('#pickQty2').val(res.data.PickQty - res.data.PickedQty);
$('#pickedQty2').val(res.data.PickedQty);
} else { //涓嶆垚鍔�
layer.msg(res.msg, {
@@ -1315,18 +1329,17 @@
}
//鑾峰彇鎵樼洏鐗╂枡鍚嶇粏
- function GetBoxInfo() {
+ function GetDataInfo() {
let param2 = {
"SoDetailId": $("#skuLotNo2").val(),
"PalletNo": $("#palletNo2").val(),
- "BoxNo": $("#boxNo").val(),
- "BoxNo3": $("#boxNo3").val(),
}
- synData(IP + "/PdaSo/GetDataComBoxInfo", param2, 'post', function (res) {
+ console.log(param2);
+ synData(IP + "/PdaSo/GetAllotPlnInfo", param2, 'post', function (res) {
if (res.code == 0) {
- tableData = deepCopy(res.data)
+ tableData2 = deepCopy(res.data)
- refreshTable(tableData)
+ refreshTable2(tableData2)
} else {
layer.msg(res.msg, {
icon: 2,
@@ -1336,6 +1349,128 @@
});
}
+ //娓叉煋琛ㄦ牸鏁版嵁
+ function refreshTable2(list) {
+ //鍏堟竻绌轰竴涓嬩俊鎭垪琛�
+ let trs = $("#tableBoxList2 tr")
+ let len = trs.length
+ //console.log("tr 鏁伴噺 + " + trs.length)
+ for (i = len - 1; i >= 2; i--) {
+ trs[i].remove();
+ }
+
+ console.log(list != null);
+ console.log(list);
+ if (list != null && list.length > 0) { //鎴愬姛
+
+ var arrTrs = new Array()
+ let idx = 0
+ for (var i in list) {
+ // list[i].BoxCode
+ var tr = $("#boxCell2").eq(0).clone();
+ tr.appendTo("#tableBoxList2");
+ // tr.attr('id', list[i].BoxCode)
+ idx++;
+ tr.attr('index', idx)
+ // tr.find("td[name='skuNo']").attr('style', 'max-width:90px;');
+ // tr.find("td[name='skuName']").attr('style', 'max-width:120px;');
+ tr.find("td[name='SkuNo']").html(list[i].BoxNo);
+ tr.find("td[name='Qty']").html(list[i].Qty);
+ tr.find("td[name='pickedQty']").html(list[i].PickedQty);
+
+ tr.show();
+ arrTrs[i] = tr
+ }
+ setPages(1, list.length)
+ canPickBox = true
+
+ } else { //涓嶆垚鍔�
+ layer.msg("鏃犳暟鎹�", {
+ icon: 2,
+ time: 2000 //2绉掑叧闂紙濡傛灉涓嶉厤缃紝榛樿鏄�3绉掞級
+ }, function () { });
+ // $("#boxNum").val(0)
+ setPages(1, 0)
+ }
+ }
+
+ //鍗曟嫞璐э紙纭鎸夐挳锛�
+ form.on('submit(formPickScatter2)', function (data) {
+
+ if ($('#bar2').val() == "") {
+ layer.msg("璇烽�夋嫨鍑哄簱鍗�", {
+ icon: 2,
+ time: 2000 //2绉掑叧闂紙濡傛灉涓嶉厤缃紝榛樿鏄�3绉掞級
+ }); return;
+ }
+ if ($('#skuLotNo2').val() == "") {
+ layer.msg("璇烽�夋嫨鐗╂枡-鎵规", {
+ icon: 2,
+ time: 2000 //2绉掑叧闂紙濡傛灉涓嶉厤缃紝榛樿鏄�3绉掞級
+ }); return;
+ }
+ if ($('#palletNo2').val() == "") {
+ layer.msg("璇疯緭鍏ユ墭鐩樼爜", {
+ icon: 2,
+ time: 2000 //2绉掑叧闂紙濡傛灉涓嶉厤缃紝榛樿鏄�3绉掞級
+ }); return;
+ }
+ let pickedQty = parseInt($('#pickedQty2').val()) //宸叉嫞鏁伴噺
+ let pickQty = parseInt($('#pickQty2').val()) //鎷h揣鏁伴噺
+ if (pickQty <= 0) {
+ layer.msg("鎷h揣鏁伴噺闇�澶т簬0", {
+ icon: 2,
+ time: 2000 //2绉掑叧闂紙濡傛灉涓嶉厤缃紝榛樿鏄�3绉掞級
+ });
+ return;
+ }
+
+ if (canPickBox == false) {
+
+ layer.msg("璇锋眰鏈畬鎴愶紝涓嶈閲嶅璇锋眰", {
+ icon: 2,
+ time: 2000 //2绉掑叧闂紙濡傛灉涓嶉厤缃紝榛樿鏄�3绉掞級
+ });
+ return;
+ }
+
+ reqPickScatter2()
+
+ return false; //闃绘琛ㄥ崟璺宠浆銆傚鏋滈渶瑕佽〃鍗曡烦杞紝鍘绘帀杩欐鍗冲彲銆�
+ });
+
+ //纭鎷h揣
+ function reqPickScatter2() {
+ var param = {
+ "SoNo": $("#bar2").val(),
+ "SoDetailId": $("#skuLotNo2").val(),
+ "PalletNo": $('#palletNo2').val(),
+ "PickQty": $('#pickQty2').val(),
+ }
+ sendData(IP + "/PdaSo/SoSetQtyPick", param, 'post', function (res) {
+ //console.log(res);
+
+ if (res.code == 0) { //鎴愬姛
+ layer.msg(res.msg, {
+ icon: 1,
+ time: 2000 //2绉掑叧闂紙濡傛灉涓嶉厤缃紝榛樿鏄�3绉掞級
+ }, function () {
+ canPickBox = true//鍥炶皟
+ updateQtyList2();
+ getBar2();
+ GetDataInfo();
+ });
+ } else { //涓嶆垚鍔�
+ layer.msg(res.msg, {
+ icon: 2,
+ time: 2000 //2绉掑叧闂紙濡傛灉涓嶉厤缃紝榛樿鏄�3绉掞級
+ }, function () {
+ canPickBox = true;//鍥炶皟
+ });
+ }
+ });
+ }
+
})
</script>
diff --git a/Wms/WMS.BLL/BllPdaServer/PdaSoServer.cs b/Wms/WMS.BLL/BllPdaServer/PdaSoServer.cs
index 3b6a538..a2bdd98 100644
--- a/Wms/WMS.BLL/BllPdaServer/PdaSoServer.cs
+++ b/Wms/WMS.BLL/BllPdaServer/PdaSoServer.cs
@@ -243,7 +243,7 @@
foreach (var demo in list)
{
var com = comInfo.FirstOrDefault(m => m.IsDel == "0" && m.BoxNo3 == demo.BoxNo);
- if (com!=null)
+ if (com != null)
{
demo.PickedQty = com.CompleteQty;
}
@@ -279,10 +279,62 @@
}
//鑾峰彇搴撳唴鏃犵鐮佺殑鎵樼洏鍒嗛厤淇℃伅
- public List<OutPdaInfo> GetAllotPlnInfo(string soDetailId, string palletNo)
+ public List<BoxInfo> GetAllotPlnInfo(string soDetailId, string palletNo)
{
try
{
+ #region 鍒ゆ柇
+
+ //鏍规嵁id鍙婃墭鐩樿幏鍙栧嚭搴撳崟鍜屾墭鐩樻嫞璐т俊鎭�
+ if (string.IsNullOrWhiteSpace(palletNo))
+ {
+ throw new Exception("鎵樼洏鍙蜂笉鑳戒负绌�");
+ }
+ //鑾峰彇瀵瑰簲鎵樼洏涓嬫槸鍚﹀瓨鍦ㄧ鐮佷俊鎭�
+ var boxInfo = Db.Queryable<DataBoxInfo>().First(b => b.IsDel == "0" && b.PalletNo == palletNo);
+ if (boxInfo != null)
+ {
+ throw new Exception($"{palletNo}鎵樼洏涓婂瓨鍦ㄧ鐮佷俊鎭紝鏃犳硶鍦ㄦ暟閲忔嫞璐ц繘琛屾搷浣滐紒");
+ }
+ //鍑哄簱鍗曟槑缁�
+ var noticeDetail = Db.Queryable<BllExportNoticeDetail>().First(a => a.Id == int.Parse(soDetailId) && a.IsDel == "0");
+ if (noticeDetail == null)
+ {
+ throw new Exception($"鏈煡璇㈠埌瀵瑰簲鍑哄簱鍗曟槑缁嗕俊鎭紝璇锋牳瀹烇紒");
+ }
+ //鍑哄簱鍗曟�诲崟
+ var notice = Db.Queryable<BllExportNotice>().First(a => a.IsDel == "0" && a.SONo == noticeDetail.SONo);
+ if (notice == null)
+ {
+ throw new Exception($"鏈煡璇㈠埌瀵瑰簲鍑哄簱鍗曟�诲崟淇℃伅锛岃鏍稿疄锛�");
+ }
+ //鍒嗛厤淇℃伅
+ var allot = Db.Queryable<BllExportAllot>().First(a => a.IsDel == "0" && a.SONo == notice.SONo && a.SODetailNo == noticeDetail.Id && a.PalletNo == palletNo && a.Status == "2" || a.Status == "3");
+ if (allot == null)
+ {
+ throw new Exception($"鏈煡璇㈠埌瀵瑰簲鍒嗛厤淇℃伅锛岃鏍稿疄锛�");
+ }
+ //搴撳瓨鏄庣粏
+ var detail = Db.Queryable<DataStockDetail>().First(a => a.IsDel == "0" && a.PalletNo == palletNo);
+ if (detail == null)
+ {
+ throw new Exception($"鏈煡璇㈠埌搴撳瓨鏄庣粏淇℃伅锛岃鏍稿疄锛�");
+ }
+
+ #endregion
+
+ List<BoxInfo> pdaInfo = new List<BoxInfo>();
+
+ BoxInfo info = new BoxInfo()
+ {
+ SkuNo = detail.SkuNo,
+ BoxNo = detail.SkuNo,
+ Qty = (int)allot.Qty,
+ PickedQty = (int)allot.CompleteQty,
+ };
+
+ pdaInfo.Add(info);
+ return pdaInfo;
}
catch (Exception e)
@@ -312,7 +364,7 @@
{
throw new Exception("鎵樼洏鐮佷笉鑳戒负绌�");
}
-
+
//鍑哄簱鍗�
var notice = Db.Queryable<BllExportNotice>().First(m => m.IsDel == "0" && m.SONo == soNo);
if (notice == null)
@@ -413,7 +465,7 @@
Db.Insertable(comList).ExecuteCommand();
//淇敼鍑哄簱鍒嗛厤淇℃伅
allot.CompleteQty += pickQty;
- allot.Status = allot.Qty == allot.CompleteQty ? "5" : "3";
+ allot.Status = allot.Qty == allot.CompleteQty ? "5" : "3";
Db.Updateable(allot).ExecuteCommand();
//鍒犻櫎搴撳瓨鏄庣粏
Db.Deleteable(stockDetail).ExecuteCommand();
@@ -627,6 +679,193 @@
}
}
+ //鍑哄簱pda鎷h揣
+ public void SoSetQtyPick(string soNo, string soDetailId, string palletNo, string PickQty, int userId)
+ {
+ Db.BeginTran();
+ try
+ {
+ #region 鍒ゆ柇
+
+ if (string.IsNullOrWhiteSpace(soNo))
+ {
+ throw new Exception("鍑哄簱鍗曟嵁涓嶈兘涓虹┖");
+ }
+ //if (string.IsNullOrWhiteSpace(soDetailId))
+ //{
+ // throw new Exception("鍑哄簱鐗╂枡-鎵规涓嶈兘涓虹┖");
+ //}
+ if (string.IsNullOrWhiteSpace(palletNo))
+ {
+ throw new Exception("鎵樼洏鐮佷笉鑳戒负绌�");
+ }
+
+ //鍑哄簱鍗�
+ var notice = Db.Queryable<BllExportNotice>().First(m => m.IsDel == "0" && m.SONo == soNo);
+ if (notice == null)
+ {
+ throw new Exception("鏈煡璇㈠埌璇ュ嚭搴撳崟鐨勪俊鎭�");
+ }
+ if (notice.Status != "3")
+ {
+ throw new Exception("鍑哄簱鍗曠殑鐘舵�佷笉鏄鍦ㄦ墽琛岋紝涓嶈兘鎷h揣");
+ }
+ //鍑哄簱鍗曟槑缁�
+ var noticeDetail = Db.Queryable<BllExportNoticeDetail>()
+ .First(m => m.IsDel == "0" && m.Id == int.Parse(soDetailId));
+ if (noticeDetail == null)
+ {
+ throw new Exception("鏈煡璇㈠埌璇ュ嚭搴撳崟鏄庣粏鐨勪俊鎭�");
+ }
+ //鍑哄簱鍒嗛厤淇℃伅
+ var allot = Db.Queryable<BllExportAllot>().First(m =>
+ m.IsDel == "0" && (m.Status == "2" || m.Status == "3") && m.SONo == soNo &&
+ m.SODetailNo == int.Parse(soDetailId) && m.PalletNo == palletNo);
+ if (allot == null)
+ {
+ throw new Exception("鏈煡璇㈠埌璇ユ墭鐩樼殑鍒嗛厤淇℃伅");
+ }
+ //鍓╀綑鎷h揣鏁伴噺锛堝緟鎷e噺鍘诲凡鎷o級
+ var needQty = allot.Qty - allot.CompleteQty;
+ if (int.Parse(PickQty) > needQty)
+ {
+ throw new Exception("鎷h揣鏁伴噺涓嶈兘澶т簬鎵樺唴鍓╀綑寰呮嫞鏁伴噺");
+ }
+
+ //搴撳瓨鏄庣粏
+ var stockDetail = Db.Queryable<DataStockDetail>().First(m => m.IsDel == "0" && m.Id == allot.StockId);
+ if (stockDetail == null)
+ {
+ throw new Exception("鏈煡璇㈠埌璇ユ墭鐩樺垎閰嶇殑搴撳瓨鏄庣粏淇℃伅锛�");
+ }
+ //搴撳瓨鎬昏〃
+ var stock = Db.Queryable<DataStock>().First(a => a.IsDel == "0" && a.SkuNo == stockDetail.SkuNo && a.LotNo == stockDetail.LotNo);
+ if (stock == null)
+ {
+ throw new Exception("鏈煡璇㈠埌璇ユ墭鐩樺垎閰嶇殑搴撳瓨淇℃伅锛�");
+ }
+ #endregion
+ //鑾峰彇褰撳墠鎵樼洏鎷h揣鏄庣粏
+ var complete = Db.Queryable<BllCompleteDetail>().First(a => a.IsDel == "0" && a.PalletNo == palletNo && a.SONo == notice.SONo && a.SODetailNo == noticeDetail.Id && a.ExportAllotId == allot.Id && a.StockId == stockDetail.Id);
+
+ //鍒よ鏄惁瀛樺湪鎷h揣鏄庣粏
+ int isComplete = 0;
+ if (complete != null)
+ {
+ isComplete = 1;
+ }
+
+ var comList = new List<BllCompleteDetail>();
+ //鍒ゆ柇鏄惁瀛樺湪鎷h揣鏄庣粏
+ if (isComplete == 0)
+ {
+ //娣诲姞鎷h揣鏄庣粏
+ var completeDetail = new BllCompleteDetail()
+ {
+ SONo = soNo,
+ SODetailNo = int.Parse(soDetailId),
+ ExportAllotId = allot.Id,
+ StockId = allot.StockId,
+ BoxNo = "",
+ BoxNo2 = "",
+ BoxNo3 = "",
+
+ LotNo = allot.LotNo,
+ LotText = allot.LotText,
+ SupplierLot = allot.SupplierLot,
+ SkuNo = allot.SkuNo,
+ SkuName = allot.SkuName,
+ Standard = allot.Standard,
+ PalletNo = palletNo,
+ CompleteQty = int.Parse(PickQty),
+
+ CreateUser = userId,
+ CreateTime = Db.GetDate(),
+ };
+ comList.Add(completeDetail);
+
+ //娣诲姞鎷h揣鏄庣粏
+ Db.Insertable(comList).ExecuteCommand();
+ }
+ else if (isComplete == 1)
+ {
+ complete.CompleteQty += int.Parse(PickQty);
+ complete.UpdateUser = userId;
+ complete.UpdateTime = Db.GetDate();
+
+ Db.Updateable(complete).ExecuteCommand();
+ }
+
+
+
+ //淇敼鍑哄簱鍒嗛厤淇℃伅
+ allot.CompleteQty += int.Parse(PickQty);
+ allot.Status = allot.Qty == allot.CompleteQty ? "5" : "3";
+ Db.Updateable(allot).ExecuteCommand();
+
+ int isDel = 0;
+
+ //鍒犻櫎鎴栦慨鏀瑰簱瀛樻槑缁�
+ stockDetail.Qty -= int.Parse(PickQty);
+ stockDetail.LockQty -= int.Parse(PickQty);
+ if (stockDetail.Qty <= 0)
+ {
+ Db.Deleteable(stockDetail).ExecuteCommand();
+ }
+ else
+ {
+ isDel = 1;
+ Db.Updateable(stockDetail).ExecuteCommand();
+ }
+ //鍒犻櫎鎴栦慨鏀瑰簱瀛�
+ stock.Qty -= int.Parse(PickQty);
+ stock.LockQty -= int.Parse(PickQty);
+ if (stock.Qty <= 0)
+ {
+ Db.Deleteable(stock).ExecuteCommand();
+ }
+ else
+ {
+ Db.Updateable(stock).ExecuteCommand();
+ }
+
+ //鏀瑰彉鎵樼洏鐘舵�佷负锛氭湭浣跨敤
+ var pallet = Db.Queryable<SysPallets>().First(m => m.PalletNo == palletNo && m.IsDel == "0");
+ if (pallet == null)
+ {
+ throw new Exception("鏈湪鎵樼洏琛ㄤ腑鏌ヨ鍒版墭鐩樹俊鎭�");
+ }
+
+ //鍒ゆ柇鎵樼洏涓婄墿鏂欐槸鍚︽嫞璐у畬姣�
+ if (isDel == 0)
+ {
+ pallet.Status = "0";
+ Db.Updateable(pallet).ExecuteCommand();
+ }
+
+ //淇敼鍑哄簱鍗曟槑缁嗘嫞璐ф暟閲�
+ noticeDetail.CompleteQty += int.Parse(PickQty);
+ Db.Updateable(noticeDetail).ExecuteCommand();
+
+ var num = Db.Queryable<BllExportNoticeDetail>()
+ .Count(m => m.IsDel == "0" && m.SONo == soNo && m.CompleteQty < m.Qty);
+ if (num <= 0)
+ {
+ notice.Status = "4"; //鏇存敼涓烘墽琛屽畬鎴�
+ }
+ //淇敼鍑哄簱鍗曚俊鎭�
+ Db.Updateable(notice).ExecuteCommand();
+
+
+ Db.CommitTran();
+ }
+ catch (Exception e)
+ {
+ Db.RollbackTran();
+ throw new Exception(e.Message);
+ }
+ }
+
/// <summary>
/// 涓嬪彂绌烘墭鍑哄簱
/// </summary>
@@ -635,7 +874,7 @@
/// <param name="url"> </param>
/// <returns></returns>
/// <exception cref="Exception"></exception>
- public string IssuePlnOutHouse(OutModePalletVm model, int userId,string url)
+ public string IssuePlnOutHouse(OutModePalletVm model, int userId, string url)
{
try
{
@@ -649,7 +888,7 @@
if (stockDetail.Count > 0)
{
//鍒ゆ柇鏄惁澶т簬闇�瑕佸灈鏁�
- if (stockDetail.Count< int.Parse(model.Num))
+ if (stockDetail.Count < int.Parse(model.Num))
{
strMsg = "闇�瑕佸灈鏁板ぇ浜庡簱瀛樺灈鏁帮紝璇烽噸鏂拌緭鍏�!";
return strMsg;
@@ -704,7 +943,7 @@
s.Status = "2"; //2 宸插垎閰�
//淇敼搴撳瓨鏄庣粏淇℃伅
Db.Updateable(s).ExecuteCommand();
-
+
#region 鍒嗛厤
//娣诲姞鍒嗛厤琛ㄤ俊鎭�
@@ -738,7 +977,7 @@
Db.Insertable(allot).ExecuteCommand();
#endregion
-
+
#region 娣诲姞鍑哄簱浠诲姟淇℃伅
var taskNo = new Common().GetMaxNo("TK");
@@ -804,7 +1043,7 @@
{
//鏇存敼浠诲姟鐨勫彂閫佽繑鍥炴椂闂�//
new TaskServer().EditTaskIssueOk(list2, time1, time2);
- str += "涓嬪彂鎴愬姛";
+ str += "涓嬪彂鎴愬姛";
}
if (wcsModel.StatusCode == -1)
{
@@ -820,7 +1059,7 @@
}
//娣诲姞鎿嶄綔鏃ュ織璁板綍
- var k = new OperationSOServer().AddLogOperationSo("PDA妯″潡", "绌烘墭鍑哄簱", i+"", "涓嬪彂", $"鐢≒DA涓嬪彂浜� {i} 涓┖鎵樺灈", userId);
+ var k = new OperationSOServer().AddLogOperationSo("PDA妯″潡", "绌烘墭鍑哄簱", i + "", "涓嬪彂", $"鐢≒DA涓嬪彂浜� {i} 涓┖鎵樺灈", userId);
Db.CommitTran();
return "";
@@ -893,7 +1132,7 @@
throw new Exception("搴撳瓨淇℃伅涓笉瀛樺湪璇ユ墭鐩樹俊鎭紝璇锋鏌�!");
}
- if (result.WareHouseNo!="W02")//W02锛氶浂绠卞簱
+ if (result.WareHouseNo != "W02")//W02锛氶浂绠卞簱
{
throw new Exception("璇ユ墭鐩樻湭鍦ㄩ浂绠卞簱锛岃妫�鏌�!");
}
@@ -901,7 +1140,7 @@
#endregion
//鑾峰彇搴撳瓨鏄庣粏淇℃伅
- var stockDetail = Db.Queryable<DataStockDetail>().Where(s => s.IsDel == "0" && s.PalletNo == palletNo).ToList();
+ var stockDetail = Db.Queryable<DataStockDetail>().Where(s => s.IsDel == "0" && s.PalletNo == palletNo).ToList();
//楠岃瘉搴撳瓨鏄庣粏淇℃伅鏄惁瀛樺湪
if (stockDetail == null)
{
@@ -990,6 +1229,6 @@
}
}
-
+
}
}
diff --git a/Wms/WMS.IBLL/IPdaServer/IPdaSoServer.cs b/Wms/WMS.IBLL/IPdaServer/IPdaSoServer.cs
index 9f96645..62a070b 100644
--- a/Wms/WMS.IBLL/IPdaServer/IPdaSoServer.cs
+++ b/Wms/WMS.IBLL/IPdaServer/IPdaSoServer.cs
@@ -63,7 +63,7 @@
/// <param name="soDetailId">鍑哄簱鍗曟槑缁咺D</param>
/// <param name="palletNo">鎵樼洏鍙�</param>
/// <returns></returns>
- List<OutPdaInfo> GetAllotPlnInfo(string soDetailId,string palletNo);
+ List<BoxInfo> GetAllotPlnInfo(string soDetailId,string palletNo);
/// <summary>
/// 鍑哄簱pda鎷h揣
@@ -78,6 +78,16 @@
void SoSetPick(string soNo, string soDetailId, string palletNo, string boxNo, string boxNo3, int userId);
/// <summary>
+ /// 鍑哄簱pda鎷h揣
+ /// </summary>
+ /// <param name="soNo">鍑哄簱鍗�</param>
+ /// <param name="soDetailId">鍑哄簱鍗曟槑缁咺D</param>
+ /// <param name="palletNo">鎵樼洏鍙�</param>
+ /// <param name="PickQty">鎷h揣鏁伴噺</param>
+ /// <param name="userId">鎿嶄綔浜�</param>
+ void SoSetQtyPick(string soNo, string soDetailId, string palletNo, string PickQty, int userId);
+
+ /// <summary>
/// 涓嬪彂绌烘墭鍑哄簱
/// </summary>
/// <param name="model">鎵樼洏璺烘暟</param>
diff --git a/Wms/Wms/Controllers/PdaSoController.cs b/Wms/Wms/Controllers/PdaSoController.cs
index e68aed2..de7edbc 100644
--- a/Wms/Wms/Controllers/PdaSoController.cs
+++ b/Wms/Wms/Controllers/PdaSoController.cs
@@ -159,7 +159,27 @@
return Ok(new { code = 1, msg = e.Message });
}
}
-
+
+ /// <summary>
+ /// 鑾峰彇绠辩爜淇℃伅锛堣幏鍙栧簱鍐呮棤绠辩爜鐨勬墭鐩樺垎閰嶄俊鎭級
+ /// </summary>
+ /// <param name="model">BoxNo:绠辩爜鍙�</param>
+ /// <returns></returns>
+ [HttpPost]
+ public IActionResult GetAllotPlnInfo(PdaSoVm model)
+ {
+ try
+ {
+ var models = _pdaSoSvc.GetAllotPlnInfo(model.SoDetailId, model.PalletNo);
+
+ return Ok(new { code = 0, msg = "绠辩爜淇℃伅", data = models });
+ }
+ catch (Exception e)
+ {
+ return Ok(new { code = 1, msg = e.Message });
+ }
+ }
+
/// <summary>
/// 鍑哄簱pda鎷h揣
@@ -193,6 +213,38 @@
}
}
+ /// <summary>
+ /// 鍑哄簱pda鎷h揣
+ /// </summary>
+ /// <param name="model">SoDetailId:鍑哄簱鍗曟槑缁咺D銆丳alletNo:鎵樼洏鐮�</param>
+ /// <returns></returns>
+ [HttpPost]
+ public IActionResult SoSetQtyPick(PdaSoVm model)
+ {
+ try
+ {
+ //鑾峰彇褰撳墠鐧诲綍鐨勭敤鎴稩D
+ var claimsIdentity = this.User.Identity as ClaimsIdentity;
+ if (claimsIdentity == null)
+ {
+ return Ok(new { code = 1, msg = "鏈幏鍙栧埌褰撳墠鎿嶄綔浜轰俊鎭�" });
+ }
+ var userId = claimsIdentity.FindFirst(ClaimTypes.Name)?.Value;
+ if (string.IsNullOrWhiteSpace(userId))
+ {
+ return Ok(new { code = 1, msg = "鏈幏鍙栧埌褰撳墠鎿嶄綔浜轰俊鎭�" });
+ }
+
+ _pdaSoSvc.SoSetQtyPick(model.SoNo, model.SoDetailId, model.PalletNo, model.PickQty, int.Parse(userId));
+
+ return Ok(new { code = 0, msg = "鎷h揣瀹屾垚", data = "" });
+ }
+ catch (Exception e)
+ {
+ return Ok(new { code = 1, msg = e.Message });
+ }
+ }
+
/// <summary>
/// 绌烘墭鍑哄簱
--
Gitblit v1.8.0