From 157abc191c34e57c1b958ae74fc3de6518ca8a30 Mon Sep 17 00:00:00 2001
From: zhaowc <526854230@qq.com>
Date: 星期五, 28 二月 2025 11:06:36 +0800
Subject: [PATCH] 修改客户需求
---
Wms/WMS.BLL/BllAsnServer/BllBoxInfoServer.cs | 1
Wms/WMS.IBLL/IPdaServer/IPdaSoServer.cs | 10
Wms/Wms/Controllers/PdaAsnController.cs | 27
Wms/Model/ModelDto/BllAsnDto/ArrivalNoticeDto.cs | 5
Wms/WMS.BLL/BllCheckServer/StockCheckServer.cs | 55
Wms/WMS.BLL/BllPdaServer/PdaAsnServer.cs | 38 +
Wms/WMS.IBLL/IPdaServer/IPdaCrServer.cs | 8
HTML/views/ASNSetting/ArrivalLogTask.html | 2
HTML/views/ASNSetting/LabelPrintSelect.html | 14
HTML/views/ASNSetting/RequestLocation.html | 8
Wms/Model/ModelDto/SysDto/MaterialsDto.cs | 4
Wms/WMS.IBLL/IPdaServer/IPdaAsnServer.cs | 3
Wms/Utility/XML/ExInfoXml.xml | 32
Wms/Model/ModelVm/PdaVm/PdaCrVm.cs | 17
Wms/Model/ModelVm/PdaVm/PdaSoVm.cs | 12
Wms/WMS.BLL/BllPdaServer/PdaSoServer.cs | 148 +++++
HTML/views/ASNSetting/ArrivalNotice.html | 4
HTML/views/BaseSetting/MaterialsForm.html | 16
HTML/views/ASNSetting/LabelPrint.html | 10
HTML/views/SOSetting/ExportNotice.html | 2
HTML/views/ASNSetting/LabelBoxBuDa.html | 7
Wms/Wms/Controllers/PdaCrController.cs | 33 +
Wms/WMS.BLL/BllAsnServer/ArrivalNoticeServer.cs | 76 +-
Wms/WMS.BLL/LogServer/TaskServer.cs | 5
HTML/views/WareHouseSetting/LocateEditArea.html | 24
Wms/WMS.IBLL/ILogServer/ITaskServer.cs | 2
Pda/View/SoSetting/palletOut.html | 155 ++++
Wms/WMS.BLL/DataServer/StockServer.cs | 428 +++++++++++++-
Pda/View/AsnSetting/palletEnter.html | 117 +++
HTML/views/WareHouseSetting/Roadway.html | 14
Wms/Utility/Tools/HttpHelper.cs | 2
Wms/WMS.BLL/BllSoServer/ExportNoticeServer.cs | 11
HTML/views/BaseSetting/Materials.html | 6
HTML/views/index.html | 2
HTML/views/QualityControl/QualityInformation.html | 2
Wms/WMS.BLL/SysServer/PackagServer.cs | 5
Wms/WMS.BLL/BllPdaServer/PdaCrServer.cs | 309 ++++++++--
Wms/WMS.BLL/SysServer/MaterialsServer.cs | 12
Wms/Model/InterFaceModel/HttpModel.cs | 6
Wms/WMS.IBLL/IDataServer/IStockServer.cs | 12
Wms/Wms/Controllers/DownApiController.cs | 44 +
41 files changed, 1,407 insertions(+), 281 deletions(-)
diff --git a/HTML/views/ASNSetting/ArrivalLogTask.html b/HTML/views/ASNSetting/ArrivalLogTask.html
index 5cbcd1b..da83d21 100644
--- a/HTML/views/ASNSetting/ArrivalLogTask.html
+++ b/HTML/views/ASNSetting/ArrivalLogTask.html
@@ -540,7 +540,7 @@
title: '鐢宠鍌ㄤ綅',
content: 'RequestLocation.html',
maxmin: true,
- area: ['25%', '40%'],
+ area: ['25%', '60%'],
btn: ["纭畾", "鍙栨秷"],
yes: function (index, layero) {
diff --git a/HTML/views/ASNSetting/ArrivalNotice.html b/HTML/views/ASNSetting/ArrivalNotice.html
index 31f6d04..461c73a 100644
--- a/HTML/views/ASNSetting/ArrivalNotice.html
+++ b/HTML/views/ASNSetting/ArrivalNotice.html
@@ -156,7 +156,7 @@
<div class="layui-inline DivLoadingArea" style="margin-top: 10px;">
<label class="layui-form-label">瀵嗙爜</label>
<div class="layui-input-inline" style="width: 220px;">
- <input type="text" id="password" name="password" placeholder="瀵嗙爜" autocomplete="off"
+ <input type="password" id="password" name="password" placeholder="瀵嗙爜" autocomplete="off"
class="layui-input">
</div>
</div>
@@ -909,6 +909,7 @@
//鏄庣粏琛ㄦ搷浣滄爮浜嬩欢
table.on('tool(LAY-app-content-list2)', function (obj) {
var data = obj.data;
+ console.log("data.supplierlot:"+data.SupplierLot);
var lotno = data.LotNo;
@@ -940,6 +941,7 @@
}
});
});
+
break;
case "Addlabel" :
diff --git a/HTML/views/ASNSetting/LabelBoxBuDa.html b/HTML/views/ASNSetting/LabelBoxBuDa.html
index 1a17122..2e1990e 100644
--- a/HTML/views/ASNSetting/LabelBoxBuDa.html
+++ b/HTML/views/ASNSetting/LabelBoxBuDa.html
@@ -46,6 +46,9 @@
.font-size10{
font-size: 10px;
}
+ /* .layui-table-cell {
+ word-break: break-all;
+ } */
</style>
</head>
@@ -75,13 +78,13 @@
</tr> -->
<tr>
<td class="font-size12">杩涘巶缂栧彿</td>
- <td id="LotNo" class="font-size10"></td>
+ <td id="LotNo" style="overflow-wrap: break-word;" class="font-size10"></td>
<td class="font-size12">鐗╂枡浠g爜</td>
<td id="SkuNo" class="font-size10"></td>
</tr>
<tr>
<td class="font-size12">鍘熷巶鎵瑰彿</td>
- <td id="SupplierLot" class="font-size10"></td>
+ <td id="SupplierLot" style="overflow-wrap: break-word;" class="font-size10"></td>
<td class="font-size12">鏁� 閲�</td>
<td id="Qty" class="font-size10"></td>
</tr>
diff --git a/HTML/views/ASNSetting/LabelPrint.html b/HTML/views/ASNSetting/LabelPrint.html
index aaa3fa2..ddce481 100644
--- a/HTML/views/ASNSetting/LabelPrint.html
+++ b/HTML/views/ASNSetting/LabelPrint.html
@@ -119,9 +119,11 @@
var expirationTime = getQueryString('ExpirationTime');
var storeTime = getQueryString('StoreTime');
+
+
var supplierLot=getQueryString('SupplierLot'); //鍘熷巶鎵瑰彿
- $("#SupplierLot").html(supplierLot);
- console.log(supplierLot);
+ //$("#SupplierLot").html(supplierLot);
+ //console.log(supplierLot);
var Lotno=getQueryString('Lotno'); //鍘熷巶鎵瑰彿
$("#Lotno").html(Lotno);
@@ -191,7 +193,9 @@
$("#SkuNo").html(res.data.SkuNo);
$("#ExpirationTime").html(expirationTime);
- $("#StoreTime").html( storeTime);
+ $("#StoreTime").html(storeTime);
+ $("#SupplierLot").html(res.data.SupplierLot);
+
// $("#imgBar").attr("src", res.data[0].imageStr);
} else { //涓嶆垚鍔�
diff --git a/HTML/views/ASNSetting/LabelPrintSelect.html b/HTML/views/ASNSetting/LabelPrintSelect.html
index 6bf016f..d7a2ea3 100644
--- a/HTML/views/ASNSetting/LabelPrintSelect.html
+++ b/HTML/views/ASNSetting/LabelPrintSelect.html
@@ -122,9 +122,9 @@
});
var id = getQueryString('Id');
- var SupplierLot=getQueryString('SupplierLot');//渚涜揣鎵规
- $('#SupplierLot').val(SupplierLot);
- console.log(SupplierLot);
+ //var SupplierLot=getQueryString('SupplierLot');//渚涜揣鎵规
+ //$('#SupplierLot').val(SupplierLot);
+ //console.log(SupplierLot);
var asnType = getQueryString('Type');
console.log(asnType);
console.log(asnType == 4);
@@ -145,6 +145,7 @@
$("#productionTime").val(res.data.ProductionTime);
$("#expirationTime").val(res.data.ExpirationTime);
$("#storeTime").val(res.data.StoreTime);
+ $("#SupplierLot").val(res.data.SupplierLot);
console.log(res.data);
} else { //涓嶆垚鍔�
layer.msg(res.msg, {
@@ -215,6 +216,13 @@
if (r != null) return unescape(r[2]);
return null;
}
+ // 鑾峰彇浼犻�掑弬鏁�
+ function getQueryString2(name) {
+ var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)", "i");
+ var r = window.location.search.substr(1).match(reg);
+ if (r != null) return unescape(r[2]);
+ return null;
+ }
})
</script>
diff --git a/HTML/views/ASNSetting/RequestLocation.html b/HTML/views/ASNSetting/RequestLocation.html
index 5533e0a..3cc2f24 100644
--- a/HTML/views/ASNSetting/RequestLocation.html
+++ b/HTML/views/ASNSetting/RequestLocation.html
@@ -33,6 +33,14 @@
<option value=""></option>
<option value="R01">1宸烽亾</option>
<option value="R02">2宸烽亾</option>
+ <option value="R03">3宸烽亾</option>
+ <option value="R04">4宸烽亾</option>
+ <option value="R05">5宸烽亾</option>
+ <option value="R06">6宸烽亾</option>
+ <option value="R07">7宸烽亾</option>
+ <option value="R08">8宸烽亾</option>
+ <option value="R09">9宸烽亾</option>
+ <option value="R10">10宸烽亾</option>
</select>
</div>
</div>
diff --git a/HTML/views/BaseSetting/Materials.html b/HTML/views/BaseSetting/Materials.html
index 53cc29e..5ac5cf5 100644
--- a/HTML/views/BaseSetting/Materials.html
+++ b/HTML/views/BaseSetting/Materials.html
@@ -98,7 +98,7 @@
<select name="Environment" id="Environment" lay-verify="" lay-verify="" lay-search>
<option value=""></option>
<option value="0">甯告俯</option>
- <option value="1">浣庢俯</option>
+ <option value="1">闃村噳</option>
<!-- <option value="3">骞茬嚗閫氶</option> -->
</select>
</div>
@@ -451,6 +451,7 @@
Environment: field.Environment,
Weight: Number(field.Weight),
Warranty: Number(field.Warranty),
+ Warrantydate:field.Warrantydate,
Price: Number(field.Price),
AdventTime: Number(field.AdventTime), //涓存湡
LowInventory: Number(field.LowInventory), //浣庡簱瀛�
@@ -458,9 +459,10 @@
};
if (doing) {
doing = false;
+
sendData(IP + "/Basis/AddMate", param, 'post', function (res) {
console.log(res);
- if (res.code == 0) { //鎴愬姛
+ if (res.code == 1) { //鎴愬姛
layer.msg(res.msg, {
icon: 1,
time: 2000 //2绉掑叧闂紙濡傛灉涓嶉厤缃紝榛樿鏄�3绉掞級
diff --git a/HTML/views/BaseSetting/MaterialsForm.html b/HTML/views/BaseSetting/MaterialsForm.html
index e01ecc5..53e89f6 100644
--- a/HTML/views/BaseSetting/MaterialsForm.html
+++ b/HTML/views/BaseSetting/MaterialsForm.html
@@ -144,10 +144,18 @@
</div>
<div class="layui-form-item">
<div class="layui-inline">
- <label class="layui-form-label" style="width: 70px;">淇濊川鏈�(澶�)</label>
- <div class="layui-input-block" style="width: 182px;">
+ <label class="layui-form-label" style="width: 90px;">淇濊川鏈�(澶�)</label>
+
+ <div class="layui-input-inline" style="width: 120px;">
<input type="text" onkeyup="value=value.replace(/[^\d]/g,'')" name="Warranty" placeholder="璇疯緭鍏ヤ繚璐ㄦ湡"
lay-verify="" autocomplete="off" class="layui-input">
+ </div>
+ <div class="layui-input-inline" style="width: 60px;">
+ <select name="Warrantydate" id="Warrantydate" lay-verify="" lay-verify="" lay-search>
+ <option value="0">澶�</option>
+ <option value="1">鏈�</option>
+ <option value="2">骞�</option>
+ </select>
</div>
</div>
<div class="layui-inline">
@@ -313,6 +321,7 @@
if (res.data.SkuNo != "") {
$("input[name='SkuNo']").attr("disabled", "disabled")
}
+
//椤甸潰璧嬪��
$("input[name='SkuNo']").val(res.data.SkuNo); // 鐗╂枡鍙�
$("input[name='SkuName']").val(res.data.SkuName); // 鐗╂枡鍚嶇О
@@ -326,7 +335,8 @@
$("#UnitNo option[value='" + res.data.UnitNo + "']").attr("selected", "selected");// 鍗曚綅
$("#PackagNo option[value='" + res.data.PackagNo + "']").attr("selected", "selected"); // 鍖呰
$("#PackagNo").attr("disabled", "disabled")
- $("#Environment option[value='" + res.data.Environment + "']").attr("selected", "selected"); // 瀛樺偍鐜
+ $("#Environment option[value='" + res.data.Environment + "']").attr("selected", "selected"); //
+ $("#Warrantydate option[value='" + res.data.Warrantydate + "']").attr("selected", "selected"); // 淇濇寔鏈熷崟浣�
$("input[name='Weight']").val(res.data.Weight); // 鐞嗚閲嶉噺
$("input[name='Warranty']").val(res.data.Warranty); // 淇濊川鏈�
$("input[name='Price']").val(res.data.Price); // 鐞嗚鍗曚环
diff --git a/HTML/views/QualityControl/QualityInformation.html b/HTML/views/QualityControl/QualityInformation.html
index dbb65f2..d405737 100644
--- a/HTML/views/QualityControl/QualityInformation.html
+++ b/HTML/views/QualityControl/QualityInformation.html
@@ -84,7 +84,7 @@
<div class="layui-inline DivLoadingArea" style="margin-top: 10px;">
<label class="layui-form-label">瀵嗙爜</label>
<div class="layui-input-inline" style="width: 220px;">
- <input type="text" id="password" name="password" placeholder="瀵嗙爜" autocomplete="off"
+ <input type="password" id="password" name="password" placeholder="瀵嗙爜" autocomplete="off"
class="layui-input">
</div>
</div>
diff --git a/HTML/views/SOSetting/ExportNotice.html b/HTML/views/SOSetting/ExportNotice.html
index e4a727b..8bf72a2 100644
--- a/HTML/views/SOSetting/ExportNotice.html
+++ b/HTML/views/SOSetting/ExportNotice.html
@@ -185,7 +185,7 @@
<div class="layui-inline DivLoadingArea" style="margin-top: 10px;">
<label class="layui-form-label">瀵嗙爜</label>
<div class="layui-input-inline" style="width: 220px;">
- <input type="text" id="password" name="password" placeholder="瀵嗙爜" autocomplete="off"
+ <input type="password" id="password" name="password" placeholder="瀵嗙爜" autocomplete="off"
class="layui-input">
</div>
</div>
diff --git a/HTML/views/WareHouseSetting/LocateEditArea.html b/HTML/views/WareHouseSetting/LocateEditArea.html
index a343fae..85290e3 100644
--- a/HTML/views/WareHouseSetting/LocateEditArea.html
+++ b/HTML/views/WareHouseSetting/LocateEditArea.html
@@ -32,19 +32,19 @@
<div class="layui-form-item">
<label class="layui-form-label">  鍌ㄦ帓</label>
<div class="layui-input-inline">
- <input type="number" lay-verify="required|PRules" id="Row" name="Row" placeholder="鎺捖仿仿�" autocomplete="off"
+ <input type="number" lay-verify="PRules" id="Row" name="Row" placeholder="鎺捖仿仿�" autocomplete="off"
class="layui-input" >
</div>
<label class="layui-form-label">  鍌ㄥ垪</label>
<div class="layui-input-inline">
- <input type="number" lay-verify="required|LRules" id="Column" name="Column" placeholder="鍒椔仿仿�" autocomplete="off"
+ <input type="number" lay-verify="LRules" id="Column" name="Column" placeholder="鍒椔仿仿�" autocomplete="off"
class="layui-input" >
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">  鍌ㄥ眰</label>
<div class="layui-input-inline">
- <input type="number" lay-verify="required|CRules" id="Layer" name="Layer" placeholder="灞偮仿仿�" autocomplete="off"
+ <input type="number" lay-verify="CRules" id="Layer" name="Layer" placeholder="灞偮仿仿�" autocomplete="off"
class="layui-input" >
</div>
<label class="layui-form-label">鍌ㄤ綅娣卞害</label>
@@ -114,20 +114,24 @@
//鑷畾涔夐獙璇佽鍒�
form.verify({
PRules: function(value, item){
+ if($("#Row").val() != ""){
var pattern = /^[a-zA-Z0-9_]+$/; // 杩欓噷鍐欎綘鐨勬鍒欒〃杈惧紡
if(!pattern.test(value)){
- return '鐢ㄦ埛鍚嶅彧鑳藉寘鍚瓧姣嶃�佹暟瀛楀拰涓嬪垝绾�';
- }
- },LRules: function(value, item){
+ return '鎺掑彧鑳藉寘鍚瓧姣嶃�佹暟瀛楀拰涓嬪垝绾�';
+ }}
+ }
+ ,LRules: function(value, item){
+ if($("#Column").val() != ""){
var pattern = /^[a-zA-Z0-9_]+$/; // 杩欓噷鍐欎綘鐨勬鍒欒〃杈惧紡
if(!pattern.test(value)){
- return '鐢ㄦ埛鍚嶅彧鑳藉寘鍚瓧姣嶃�佹暟瀛楀拰涓嬪垝绾�';
- }
+ return '鍒楀彧鑳藉寘鍚瓧姣嶃�佹暟瀛楀拰涓嬪垝绾�';
+ }}
},CRules: function(value, item){
+ if($("#Layer").val() != ""){
var pattern = /^[a-zA-Z0-9_]+$/; // 杩欓噷鍐欎綘鐨勬鍒欒〃杈惧紡
if(!pattern.test(value)){
- return '鐢ㄦ埛鍚嶅彧鑳藉寘鍚瓧姣嶃�佹暟瀛楀拰涓嬪垝绾�';
- }
+ return '灞傚彧鑳藉寘鍚瓧姣嶃�佹暟瀛楀拰涓嬪垝绾�';
+ }}
}
});
diff --git a/HTML/views/WareHouseSetting/Roadway.html b/HTML/views/WareHouseSetting/Roadway.html
index 3a5c98a..544cd45 100644
--- a/HTML/views/WareHouseSetting/Roadway.html
+++ b/HTML/views/WareHouseSetting/Roadway.html
@@ -224,13 +224,15 @@
width: 100,
align: 'center'
- }, {
- field: 'TypeName',
- title: '鍖哄煙绫诲埆',
- width: 150,
- align: 'center'
+ },
+ // {
+ // field: 'TypeName',
+ // title: '鍖哄煙绫诲埆',
+ // width: 150,
+ // align: 'center'
- }, {
+ // },
+ {
field: 'TemperatureName',
title: '瀛樺偍鐜',
align: 'center',
diff --git a/HTML/views/index.html b/HTML/views/index.html
index 13eab3b..2e9a9a5 100644
--- a/HTML/views/index.html
+++ b/HTML/views/index.html
@@ -53,7 +53,7 @@
</cite>
</a>
<dl class="layui-nav-child">
- <!-- <dd><a lay-href="set/user/info.html">鍩烘湰璧勬枡</a></dd> -->
+ <!-- <dd><a lay-href="set/user/info.html">鍩烘湰璧勬枡</a></dd>-->
<dd><a lay-href="set/user/password.html" id="changePassword">淇敼瀵嗙爜</a></dd>
<hr>
<dd><a href="Login.html">閫�鍑�</a></dd>
diff --git a/Pda/View/AsnSetting/palletEnter.html b/Pda/View/AsnSetting/palletEnter.html
index 5f4f167..30215ff 100644
--- a/Pda/View/AsnSetting/palletEnter.html
+++ b/Pda/View/AsnSetting/palletEnter.html
@@ -57,11 +57,39 @@
autocomplete="off" class="layui-input">
</div>
</div>
- <div id="" style="margin-left: 21%; width: 38%;float: left;">
+ <div id="layout-boxcode" class="layui-form-item layout-input">
+ <label class="layui-form-label">鍦扮爜锛�</label>
+ <div class="layui-input-block">
+ <input id="LocatNo" type="text" placeholder="璇锋壂鎻忓湴鐮�"
+ autocomplete="off" class="layui-input">
+ </div>
+ </div>
+ <div id="" class="layui-form-item layout-dropdownlist">
+ <label class="layui-form-label" lang>鍏ュ簱鍙o細</label>
+ <div class="layui-input-block" id="selectRuku">
+ <select id="Ruku" lay-filter="getRuku" lay-search>
+ <option value=""></option>
+ <option value="033">033</option>
+ <option value="039">039</option>
+ <option value="044">044</option>
+ <option value="051">051</option>
+ <option value="443">443</option>
+ <option value="440">440</option>
+ <option value="001">001</option>
+ <option value="002">002</option>
+ </select>
+ <img src="/assets/down_arraw.png">
+ </div>
+ </div>
+
+ <div id="" style="margin-left: 21%; width: 25%;float: left;">
<button id="btnScanBox" class="layout-btn layout-btn-blue" lay-submit lay-filter="formBind" type="button">缁戝畾</button>
</div>
- <div id="" style="width: 38%;float: left;">
+ <div id="" style="width: 25%;float: left;">
<button id="btnScanBox" class="layout-btn layout-btn-red" lay-submit lay-filter="formUnbind" type="button">瑙g粦</button>
+ </div>
+ <div id="" style="width: 25%;float: left;">
+ <button id="btnAGVTrans" class="layout-btn layout-btn-red" lay-submit lay-filter="formAGVIN" type="button">AGV鍏ュ簱</button>
</div>
</form>
@@ -74,6 +102,7 @@
<script src="/layui/layui.js"></script>
<script src="/js/public.js"></script>
<script src="/js/jquery.cookie.js"></script>
+ <script src="/js/language.js"></script>
<script>
layui.use(['form', 'jquery'], function() {
var form = layui.form
@@ -126,6 +155,7 @@
$("#PalletNo").on('input',function(){
if($("#PalletNo").val() == "" || $("#PalletNo").val().length<10){
+
return
}
if ($("#PalletNo").val().length>=10) {
@@ -134,7 +164,39 @@
}
checkPalletStat()
})
-
+
+ //妫�鏌ュ湴鐮佺姸鎬�
+ function checkLocatStatus(){
+ var param = {
+ "LocatNo": $("#LocatNo").val()
+ }
+ sendData(IP + "/PdaAsn/IsEnableLocatNo", param, 'post', function (res) {
+ if (res.code == 0) {
+ $("#palletNum").focus();
+ } else {
+ layer.msg(res.msg, {
+ icon: 2,
+ time: 2000 //2绉掑叧闂紙濡傛灉涓嶉厤缃紝榛樿鏄�3绉掞級
+ },
+ function () { });
+ $("#LocatNo").val('')
+ }
+ });
+ }
+ //褰撳湴鐮佽緭鍏ユ澶卞幓鐒︾偣鏃�,妫�鏌ヤ竴涓嬪湴鐮佺姸鎬�
+ $("#LocatNo").on('input',function(){
+
+ if($("#LocatNo").val() == "" || $("#LocatNo").val().length!=9){
+ layer.msg('璇锋鏌ュ湴鐮佹槸鍚︽纭�', {
+ icon: 2,
+ time: 2000 //2绉掑叧闂紙濡傛灉涓嶉厤缃紝榛樿鏄�3绉掞級
+ });
+ return;
+ }
+ checkLocatStatus()
+
+ })
+
// $("#bar").focus();
$("#PalletNo").keydown(function(e) {
//console.log("e.keyCode is "+e.keyCode)
@@ -289,6 +351,55 @@
return false; //闃绘琛ㄥ崟璺宠浆銆傚鏋滈渶瑕佽〃鍗曡烦杞紝鍘绘帀杩欐鍗冲彲銆�
});
+
+ form.on('submit(formAGVIN)', function(data) {
+
+ if (!$("#LocatNo").val()) {
+ layer.msg('璇锋壂鎻忓湴鐮�', {
+ icon: 2,
+ time: 2000 //2绉掑叧闂紙濡傛灉涓嶉厤缃紝榛樿鏄�3绉掞級
+ });
+ return;
+ }
+ if (!$("#Ruku").val()) {
+ layer.msg('璇烽�夋嫨鍏ュ簱鍙�', {
+ icon: 2,
+ time: 2000 //2绉掑叧闂紙濡傛灉涓嶉厤缃紝榛樿鏄�3绉掞級
+ });
+ return;
+ }
+ //鍏堢粦瀹氱┖鎵樼洏鍨�
+ //bind();
+ //缁戝畾鎴愬姛鍚庤皟搴GV杩愰�佺┖鎵樼洏鍨�
+ var param = {
+ 'PalletNo':$("#PalletNo").val(),
+ "LocatNo": $("#LocatNo").val(),
+ "Ruku": $("#Ruku").val(),
+ }
+ sendData(IP + "/PdaCr/AgvTransport3", param, 'post', function(res) {
+ //console.log("鎵樼洏鐘舵�侊細"+res.msg)
+ if (res.code == 0) { //鎴愬姛
+ layer.msg(res.msg, {
+ icon: 1,
+ time: 1000 //2绉掑叧闂紙濡傛灉涓嶉厤缃紝榛樿鏄�3绉掞級
+ }, function() {
+ });
+ $("#PalletNo").val(''),
+ $("#palletNum").val(''),
+ $("#LocatNo").val(''),
+ $("#Ruku").val('')
+ } else { //涓嶆垚鍔�
+ layer.msg(res.msg, {
+ icon: 2,
+ time: 2000 //2绉掑叧闂紙濡傛灉涓嶉厤缃紝榛樿鏄�3绉掞級
+ }, function() {
+ //鍥炶皟
+ });
+ }
+ });
+ return false; //闃绘琛ㄥ崟璺宠浆銆傚鏋滈渶瑕佽〃鍗曡烦杞紝鍘绘帀杩欐鍗冲彲銆�
+ });
+
function unbind(){
layer.msg('璇ユ搷浣滀細瑙g粦杩欎釜鎵樼洏涓婄殑鎵�鏈夋墭鐩橈紝纭畾瑕佽В缁戝悧锛�', {
time: 0 //涓嶈嚜鍔ㄥ叧闂�
diff --git a/Pda/View/SoSetting/palletOut.html b/Pda/View/SoSetting/palletOut.html
index 0e7ac26..ef77d81 100644
--- a/Pda/View/SoSetting/palletOut.html
+++ b/Pda/View/SoSetting/palletOut.html
@@ -55,36 +55,65 @@
<li><a href="../login.html">閲嶆柊鐧诲綍</a></li>
</ul>
</div>
- <div id="" class="layout-bill-info">
- <form class="layui-form" action="">
- <div id="layout-pallet" class="layui-form-item layout-input" style="margin-top: 10px;">
- <label class="layui-form-label">鎵樼洏鍨涙暟锛�</label>
- <div class="layui-input-block">
- <input id="STOCKCODE" type="number" lay-verify="stock" placeholder="鎵樼洏鍨涙暟"
- autocomplete="off" class="layui-input" oninput="value=value.replace(/^(0+)|[^\d]+/g,'')">
+
+ <button id="option1" class="layout-btn" type="button"> 鏁存墭</button>
+ <button id="option2" class="layout-btn" type="button">鍗曟墭</button>
+
+ <div id="content1">
+ <div id="" class="layout-bill-info">
+ <form class="layui-form" action="">
+ <div id="layout-pallet" class="layui-form-item layout-input" style="margin-top: 10px;">
+ <label class="layui-form-label">鎵樼洏鍨涙暟锛�</label>
+ <div class="layui-input-block">
+ <input id="STOCKCODE" type="number" lay-verify="stock" placeholder="鎵樼洏鍨涙暟"
+ autocomplete="off" class="layui-input" oninput="value=value.replace(/^(0+)|[^\d]+/g,'')">
+ </div>
</div>
- </div>
- <div id="layout-bill" class="layui-form-item layout-dropdownlist" >
- <label class="layui-form-label">鍑哄簱鍙o細</label>
- <div class="layui-input-block" id="selectDiv">
- <select id="bar" lay-filter="getbar" lay-verify="required" lay-search>
- <option value=""></option>
- <option value="033">033</option>
- <option value="039">039</option>
- <option value="044">044</option>
- <option value="051">051</option>
- <option value="059">059</option>
- <option value="440">440</option>
- <option value="443">443</option>
- </select>
- <!-- <img src="/assets/down_arraw.png" > -->
+ <div id="layout-bill" class="layui-form-item layout-dropdownlist" >
+ <label class="layui-form-label">鍑哄簱鍙o細</label>
+ <div class="layui-input-block" id="selectDiv">
+ <select id="bar" lay-filter="getbar" lay-verify="required" lay-search>
+ <option value=""></option>
+ <option value="033">033</option>
+ <option value="039">039</option>
+ <option value="044">044</option>
+ <option value="051">051</option>
+ <option value="059">059</option>
+ <option value="440">440</option>
+ <option value="443">443</option>
+ </select>
+ <!-- <img src="/assets/down_arraw.png" > -->
+ </div>
</div>
- </div>
- <div id="" class="btn-out">
- <button id="btnOut" class="layout-btn layout-btn-blue" type="button">鍑哄簱</button>
- </div>
- </form>
+ <div id="" class="btn-out">
+ <button id="btnOut" class="layout-btn layout-btn-blue" type="button">鍑哄簱</button>
+ </div>
+ </form>
+ </div>
</div>
+
+ <div id="content2">
+ <div id="" class="layout-bill-info">
+ <form class="layui-form" action="">
+ <div id="layout-bill" class="layui-form-item layout-dropdownlist" >
+ <label class="layui-form-label">鎷h揣鍙o細</label>
+ <div class="layui-input-block" id="selectDiv">
+ <select id="bar2" lay-filter="getbar" lay-verify="required" lay-search>
+ <option value=""></option>
+ <option value="001">001</option>
+ <option value="002">002</option>
+ </select>
+ <!-- <img src="/assets/down_arraw.png" > -->
+ </div>
+ </div>
+ <div id="" class="btn-out">
+ <button id="btnOut2" class="layout-btn layout-btn-blue" type="button">鍙┖鎵�</button>
+ </div>
+ </form>
+ </div>
+ </div>
+
+
</div>
</div>
@@ -96,6 +125,37 @@
layui.use(['form', 'jquery'], function() {
var form = layui.form
var isChongFu = true;
+
+ /* 鏍囩鍒囨崲浠g爜 */
+
+ var xianshiyemian = 0;
+
+ $('#option1').attr("style", "background-color: red;width: 50%;float: left;text-align: center;"); //閫変腑鍚庨鑹�
+ $('#option2').attr("style", "background-color: #999;width: 50%;float: right;text-align: center;"); //榛樿棰滆壊
+ $('#content2').hide();
+ $(document).ready(function () {
+ $('#option1').click(function () {
+ // qingkong();
+ xianshiyemian = 0;
+ $('#content1').show();
+ $('#option1').attr("style", "background-color: red;width: 50%;float: left;text-align: center;"); //閫変腑鍚庨鑹�
+
+ $('#content2').hide();
+ $('#option2').attr("style", "background-color: #999;width: 50%;float: right;text-align: center;"); //榛樿棰滆壊
+ $("#palletNo").focus();//鍏夋爣榛樿閫変腑
+ });
+
+ $('#option2').click(function () {
+ // qingkong();
+ xianshiyemian = 1;
+ $('#content1').hide();
+ $('#option1').attr("style", "background-color: #999;width: 50%;float: left;text-align: center;"); //榛樿棰滆壊
+
+ $('#content2').show();
+ $('#option2').attr("style", "background-color: red;width: 50%;float: right;text-align: center;"); //閫変腑鍚庨鑹�
+ $("#palletNo2").focus();//鍏夋爣榛樿閫変腑
+ });
+ });
//鎵�閫夊叆搴撳崟鐨勮缁嗕俊鎭�
//console.log($.cookie('userId'));
// if (!$.cookie('userId')) {
@@ -111,6 +171,7 @@
function clear(){
$("#STOCKCODE").val("");
$("#bar option[value='']").attr("selected", "selected");
+ $("#bar2 option[value='']").attr("selected", "selected");
form.render('select');
}
@@ -182,6 +243,46 @@
}
})
+ //鍙崟绌烘墭
+ $('#btnOut2').click(function(){
+
+ if($('#bar2').val() == ''){
+ layer.msg("璇烽�夋嫨鎷h揣鍙�", {
+ icon: 2,
+ time: 2000 //2绉掑叧闂紙濡傛灉涓嶉厤缃紝榛樿鏄�3绉掞級
+ }, function() {});
+ return
+ }
+ if (isChongFu == true) {
+ isChongFu = false;
+ var param2 = {
+ OutMode:$('#bar2').val()
+ };
+
+ // Int(param.Num)
+ console.log(param2)
+ sendData(IP + "/DownApi/IssuePlnCheckHouseWcs", param2, 'post', function(res) {
+ console.log("鍑哄簱锛�"+JSON.stringify(res))
+ if (res.code == 0) { //鎴愬姛
+ layer.msg(res.msg, {
+ icon: 1,
+ time: 2000 //2绉掑叧闂紙濡傛灉涓嶉厤缃紝榛樿鏄�3绉掞級
+ }, function() {isChongFu = true;clear();});
+ } else { //涓嶆垚鍔�
+ layer.msg(res.msg, {
+ icon: 2,
+ time: 2000 //2绉掑叧闂紙濡傛灉涓嶉厤缃紝榛樿鏄�3绉掞級
+ }, function() {isChongFu = true;clear();});
+ }
+ });
+ }else{
+ layer.msg("璇峰嬁閲嶅鐐瑰嚮", {
+ icon: 2,
+ time: 2000 //2绉掑叧闂紙濡傛灉涓嶉厤缃紝榛樿鏄�3绉掞級
+ });
+ }
+
+ })
//鑾峰彇鍑哄簱鍙�
// $("#selectDiv").click(function(){
diff --git a/Wms/Model/InterFaceModel/HttpModel.cs b/Wms/Model/InterFaceModel/HttpModel.cs
index 206f8e1..7327c9e 100644
--- a/Wms/Model/InterFaceModel/HttpModel.cs
+++ b/Wms/Model/InterFaceModel/HttpModel.cs
@@ -111,6 +111,12 @@
public string Msg { get; set; }
}
+ public class WcsAgvModel
+ {
+ public int Success { get; set; }
+ public string Message { get; set; }
+ }
+
/// <summary>
/// 鎺ユ敹wcs鍙斁淇″彿model
/// </summary>
diff --git a/Wms/Model/ModelDto/BllAsnDto/ArrivalNoticeDto.cs b/Wms/Model/ModelDto/BllAsnDto/ArrivalNoticeDto.cs
index e2fc37a..5a82dce 100644
--- a/Wms/Model/ModelDto/BllAsnDto/ArrivalNoticeDto.cs
+++ b/Wms/Model/ModelDto/BllAsnDto/ArrivalNoticeDto.cs
@@ -118,6 +118,11 @@
/// 鍌ㄥ瓨鏈熻嚦
/// </summary>
public string StoreTime { get; set; }
+
+ /// <summary>
+ /// 渚涜揣鎵规
+ /// </summary>
+ public string SupplierLot { get; set; }
}
}
diff --git a/Wms/Model/ModelDto/SysDto/MaterialsDto.cs b/Wms/Model/ModelDto/SysDto/MaterialsDto.cs
index f12fc69..aaaf68e 100644
--- a/Wms/Model/ModelDto/SysDto/MaterialsDto.cs
+++ b/Wms/Model/ModelDto/SysDto/MaterialsDto.cs
@@ -88,6 +88,10 @@
/// 淇濊川鏈�
/// </summary>
public int? Warranty { get; set; }
+ /// <summary>
+ /// 淇濊川鏈熷崟浣�
+ /// </summary>
+ public string Warrantydate { get; set; }
/// <summary>
/// 鐞嗚鍗曚环
diff --git a/Wms/Model/ModelVm/PdaVm/PdaCrVm.cs b/Wms/Model/ModelVm/PdaVm/PdaCrVm.cs
index f3ead93..50338c5 100644
--- a/Wms/Model/ModelVm/PdaVm/PdaCrVm.cs
+++ b/Wms/Model/ModelVm/PdaVm/PdaCrVm.cs
@@ -86,4 +86,21 @@
public string EndLocatNo { get; set; }
}
+
+ public class PdaAgvTransNullPalnoModel
+ {
+
+ /// <summary>
+ /// 鎵樼洏鏉$爜
+ /// </summary>
+ public string PalletNo { get; set; }
+ /// <summary>
+ /// 鐩爣鍖哄煙
+ /// </summary>
+ public string LocatNo { get; set; }
+ /// <summary>
+ /// 鍏ュ簱鍙�
+ /// </summary>
+ public string Ruku { get; set; }
+ }
}
diff --git a/Wms/Model/ModelVm/PdaVm/PdaSoVm.cs b/Wms/Model/ModelVm/PdaVm/PdaSoVm.cs
index 47db435..8803a87 100644
--- a/Wms/Model/ModelVm/PdaVm/PdaSoVm.cs
+++ b/Wms/Model/ModelVm/PdaVm/PdaSoVm.cs
@@ -86,4 +86,16 @@
public string OutMode { get; set; }
}
+ /// <summary>
+ /// 鎷h揣鍙┖鎵樼洏
+ /// </summary>
+ public class CheckModePalletVm
+ {
+
+ /// <summary>
+ /// 鎷h揣鍙�
+ /// </summary>
+ public string OutMode { get; set; }
+ }
+
}
diff --git a/Wms/Utility/Tools/HttpHelper.cs b/Wms/Utility/Tools/HttpHelper.cs
index 2f7b637..4b90152 100644
--- a/Wms/Utility/Tools/HttpHelper.cs
+++ b/Wms/Utility/Tools/HttpHelper.cs
@@ -218,7 +218,7 @@
//淇敼鍙傛暟鐨勫��
foreach (var de in Pars)
{
- string subNode = "DataList/Product/Batch";// + de.Key.ToString();
+ string subNode = "DataList/Events/Event/DataField";// + de.Key.ToString();
XmlNode node = xml.SelectSingleNode(subNode, nsmgr);
if (de != null)
diff --git a/Wms/Utility/XML/ExInfoXml.xml b/Wms/Utility/XML/ExInfoXml.xml
index 2898d93..1e76c09 100644
--- a/Wms/Utility/XML/ExInfoXml.xml
+++ b/Wms/Utility/XML/ExInfoXml.xml
@@ -1,10 +1,26 @@
锘�
-<DataList xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" corpName="澶╂触甯備腑鍗囨寫鎴樼敓鐗╃鎶�鏈夐檺鍏徃"
- toUnitType="2" manCode="19053107" dataType="wareHouseOut" version="1.1"
- xsi:noNamespaceSchemaLocation="鍏借嵂浜у搧鍑哄簱鏁版嵁1.1.xsd">
- <Product>
- <Batch operator="鐢虫姤璁惧鍚嶇О" oprDate="2022/06/25" toProvince="榛戦緳姹熺渷" toCity="鍝堝皵婊ㄥ競" toCounty="鍙屽煄鍖�" toUnit="鍝堝皵婊ㄦ簮绛栧晢璐告湁闄愬叕鍙�" toUnitcode="">
- <!--<Data code="202203240009000479940290"/>-->
- </Batch>
- </Product>
+<DataList version="1.0" encoding="utf-8" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="缁堢鎺ュ彛XML Schema-3.0.xsd" SN="BZ010" Version="3.0" License="1001122">
+ <Events>
+ <Event Name="SalesWareHouseOut" MainAction="WareHouseOut">
+ <ActionMaping>
+ <Action Name="WareHouseOut">
+ <ActionData>CorpOrderID</ActionData>
+ <ActionData>Actor</ActionData>
+ <ActionData>ToCorpID</ActionData>
+ <ActionData>ActDate</ActionData>
+ <ActionData>Code</ActionData>
+ </Action>
+ </ActionMaping>
+ <DataMaping>
+ <MetaData Name="CorpOrderID" Type="String"/>
+ <MetaData Name="Actor" Type="String"/>
+ <MetaData Name="ActDate" Type="Date"/>
+ <MetaData Name="ToCorpID" Type="String"/>
+ <MetaData Name="Code" Type="String"/>
+ </DataMaping>
+ <DataField>
+
+ </DataField>
+ </Event>
+ </Events>
</DataList>
\ No newline at end of file
diff --git a/Wms/WMS.BLL/BllAsnServer/ArrivalNoticeServer.cs b/Wms/WMS.BLL/BllAsnServer/ArrivalNoticeServer.cs
index d163829..8597905 100644
--- a/Wms/WMS.BLL/BllAsnServer/ArrivalNoticeServer.cs
+++ b/Wms/WMS.BLL/BllAsnServer/ArrivalNoticeServer.cs
@@ -156,6 +156,7 @@
data.ProductionTime = boxInfo.ProductionTime!= null ? ((DateTime)boxInfo.ProductionTime).ToString("yyyy-MM-dd"):"";
data.ExpirationTime = boxInfo.ExpirationTime != null ? ((DateTime)boxInfo.ExpirationTime).ToString("yyyy-MM-dd") : "";
data.StoreTime = boxInfo.StoreTime != null ? ((DateTime)boxInfo.StoreTime).ToString("yyyy-MM-dd") : "";
+
}
}
}
@@ -163,6 +164,7 @@
var labelQty = Db.Queryable<BllBoxInfo>().Where(m => m.IsDel == "0" && m.ASNDetailNo == id).Sum(m => m.Qty);
var qty = detail.Qty - labelQty;
data.Qty = qty.ToString();
+ data.SupplierLot = detail.SupplierLot;
return data;
}
catch (Exception e)
@@ -213,7 +215,7 @@
break;
case "6"://浠e偍鍏ュ簱
skuType = "(0,1,2,3,4)";
- IsPack = 2; //涓嶈创
+ //IsPack = 2; //涓嶈创
break;
case "7"://瀵勫瓨鍏ュ簱
//skuType = "(3)";
@@ -1269,45 +1271,45 @@
};
#region 閫氳繃鎺ュ彛鍙戦�佽嚦erp 鎴� mes
- //绯荤粺瀵规帴鍚庢斁寮�
- var jsonData = JsonConvert.SerializeObject(asnInfo);
- var mesList = new List<string>() { "0", "4" }; //0 鎴愬搧鍏ュ簱 4浣欐枡閫�鍥炲叆搴�
- var erpList = new List<string>() { "1", "2", "3" }; //1 閲囪喘鍏ュ簱 2涓棿鍝佸叆搴� 3 閫�璐у叆搴�
+ ////绯荤粺瀵规帴鍚庢斁寮�
+ //var jsonData = JsonConvert.SerializeObject(asnInfo);
+ //var mesList = new List<string>() { "0", "4" }; //0 鎴愬搧鍏ュ簱 4浣欐枡閫�鍥炲叆搴�
+ //var erpList = new List<string>() { "1", "2", "3" }; //1 閲囪喘鍏ュ簱 2涓棿鍝佸叆搴� 3 閫�璐у叆搴�
- if (mesList.Contains(notice.Type)) // mes
- {
- //鑾峰彇浠ょ墝
- //var token = new Token().GetMesToken(mesTokenUrl); //娴嬭瘯涓嶄娇鐢═OKEN锛屾寮忚繍琛屾椂鏀惧紑
- var token = "";
- Dictionary<string, string> mesDic = new Dictionary<string, string>()
- {
- {"Authorization",token }
- };
- var mesData = new FinishAsnModel()
- {
- no = asnInfo.OrderCode,
- qty = asnInfo.AsnDetails.Sum(m=>m.Qty)
- };
- jsonData = JsonConvert.SerializeObject(mesData);
- //璋冪敤鎺ュ彛
- var response = HttpHelper.DoPost(mesUrl, jsonData, "鍏ュ簱鍗曞畬鎴愪笂浼�", "MES", mesDic);
+ //if (mesList.Contains(notice.Type)) // mes
+ //{
+ // //鑾峰彇浠ょ墝
+ // //var token = new Token().GetMesToken(mesTokenUrl); //娴嬭瘯涓嶄娇鐢═OKEN锛屾寮忚繍琛屾椂鏀惧紑
+ // var token = "";
+ // Dictionary<string, string> mesDic = new Dictionary<string, string>()
+ // {
+ // {"Authorization",token }
+ // };
+ // var mesData = new FinishAsnModel()
+ // {
+ // no = asnInfo.OrderCode,
+ // qty = asnInfo.AsnDetails.Sum(m=>m.Qty)
+ // };
+ // jsonData = JsonConvert.SerializeObject(mesData);
+ // //璋冪敤鎺ュ彛
+ // var response = HttpHelper.DoPost(mesUrl, jsonData, "鍏ュ簱鍗曞畬鎴愪笂浼�", "MES", mesDic);
- var obj = JsonConvert.DeserializeObject<MesModel>(response);//瑙f瀽杩斿洖鏁版嵁
- if (obj.status != "success")
- {
- throw new Exception("涓婁紶澶辫触" + obj.message);
- }
- }
- else if (erpList.Contains(notice.Type)) //erp
- {
- var response = HttpHelper.DoPost(erpUrl, jsonData, "鍏ュ簱鍗曞畬鎴愪笂浼�", "ERP");
+ // var obj = JsonConvert.DeserializeObject<MesModel>(response);//瑙f瀽杩斿洖鏁版嵁
+ // if (obj.status != "success")
+ // {
+ // throw new Exception("涓婁紶澶辫触" + obj.message);
+ // }
+ //}
+ //else if (erpList.Contains(notice.Type)) //erp
+ //{
+ // var response = HttpHelper.DoPost(erpUrl, jsonData, "鍏ュ簱鍗曞畬鎴愪笂浼�", "ERP");
- var obj = JsonConvert.DeserializeObject<ErpModel>(response);//瑙f瀽杩斿洖鏁版嵁
- if (obj.Success != 0)
- {
- throw new Exception("涓婁紶澶辫触" + obj.Message);
- }
- }
+ // var obj = JsonConvert.DeserializeObject<ErpModel>(response);//瑙f瀽杩斿洖鏁版嵁
+ // if (obj.Success != 0)
+ // {
+ // throw new Exception("涓婁紶澶辫触" + obj.Message);
+ // }
+ //}
#endregion
diff --git a/Wms/WMS.BLL/BllAsnServer/BllBoxInfoServer.cs b/Wms/WMS.BLL/BllAsnServer/BllBoxInfoServer.cs
index 5f6f123..650d65e 100644
--- a/Wms/WMS.BLL/BllAsnServer/BllBoxInfoServer.cs
+++ b/Wms/WMS.BLL/BllAsnServer/BllBoxInfoServer.cs
@@ -529,6 +529,7 @@
data.Standard = asnDetail.Standard;
data.SupplierLot = asnDetail.SupplierLot;
data.PackageStandard = str;
+ data.SupplierLot = asnDetail.SupplierLot;
return data;
}
catch (Exception e)
diff --git a/Wms/WMS.BLL/BllCheckServer/StockCheckServer.cs b/Wms/WMS.BLL/BllCheckServer/StockCheckServer.cs
index acf4038..2e8dd5f 100644
--- a/Wms/WMS.BLL/BllCheckServer/StockCheckServer.cs
+++ b/Wms/WMS.BLL/BllCheckServer/StockCheckServer.cs
@@ -995,7 +995,7 @@
}
}
- //鐢熸垚鐩樼偣璁板綍
+ //鐢熸垚鐩樼偣璁板綍
Db.Insertable(logList).ExecuteCommand();
}
// 鍌ㄤ綅鍙�
@@ -1397,8 +1397,8 @@
materiel_name = item.SkuName,
qty = item.Qty,
batch = item.LotNo,
- producttime = item.ProductionTime.ToString().Substring(1, 8),
- expiry = item.ExpirationTime.ToString().Substring(1, 8)
+ producttime = item2.ProductionTime.ToString().Substring(1, 8),
+ expiry = item2.ExpirationTime.ToString().Substring(1, 8)
});
}
@@ -1427,32 +1427,33 @@
Db.Updateable(endLocate).ExecuteCommand();
}
- if (endLocate!= null && endLocate.AreaNo == "B12")
- {
- //鑾峰彇浠ょ墝
- var token = new Token().GetMesToken(mesTokenUrl);
- Dictionary<string, string> mesDic = new Dictionary<string, string>()
- {
- {"Authorization",token }
- };
- var mesData = new RequertBeiliaoModel()
- {
- morder_no = stockDetail.First().SONo,
- pallet = stockDetail.First().PalletNo,
- layer_no = endLocate.LocatNo,
- items = data
- };
- var jsonData = JsonConvert.SerializeObject(mesData);
- //璋冪敤鎺ュ彛
- var response = HttpHelper.DoPost(mesUrl, jsonData, "澶囨枡瀹屾垚杩愯嚦缂撳瓨鍖哄弽棣堣嚦MES", "MES", mesDic);
+ //姝e紡杩愯绋嬪簭鏀惧紑
+ //if (endLocate!= null && endLocate.AreaNo == "B12")
+ //{
+ // //鑾峰彇浠ょ墝
+ // var token = new Token().GetMesToken(mesTokenUrl);
+ // Dictionary<string, string> mesDic = new Dictionary<string, string>()
+ // {
+ // {"Authorization",token }
+ // };
+ // var mesData = new RequertBeiliaoModel()
+ // {
+ // morder_no = stockDetail.First().SONo,
+ // pallet = stockDetail.First().PalletNo,
+ // layer_no = endLocate.LocatNo,
+ // items = data
+ // };
+ // var jsonData = JsonConvert.SerializeObject(mesData);
+ // //璋冪敤鎺ュ彛
+ // var response = HttpHelper.DoPost(mesUrl, jsonData, "澶囨枡瀹屾垚杩愯嚦缂撳瓨鍖哄弽棣堣嚦MES", "MES", mesDic);
- var obj = JsonConvert.DeserializeObject<MesModel>(response);//瑙f瀽杩斿洖鏁版嵁
- if (obj.status != "0")
- {
- throw new Exception("澶囨枡鍚屾MES澶辫触锛�" + obj.message);
- }
+ // var obj = JsonConvert.DeserializeObject<MesModel>(response);//瑙f瀽杩斿洖鏁版嵁
+ // if (obj.status != "0")
+ // {
+ // throw new Exception("澶囨枡鍚屾MES澶辫触锛�" + obj.message);
+ // }
- }
+ //}
if (userId != 0)
{
//娣诲姞鎿嶄綔鏃ュ織璁板綍
diff --git a/Wms/WMS.BLL/BllPdaServer/PdaAsnServer.cs b/Wms/WMS.BLL/BllPdaServer/PdaAsnServer.cs
index b38fcf2..461c9fc 100644
--- a/Wms/WMS.BLL/BllPdaServer/PdaAsnServer.cs
+++ b/Wms/WMS.BLL/BllPdaServer/PdaAsnServer.cs
@@ -44,7 +44,7 @@
try
{
//model.Type锛氬崟鎹被鍨� 鍦ㄨ繖閲屼唬琛ㄥ墠绔〉绛剧被鍨嬶細鍗虫爣绛鹃〉绛撅細璐存爣鐗╂枡锛� 鏁伴噺椤电锛氫笉璐磋〃鐗╂枡锛屽師鍥狅細鎳掑緱鍔犲弬鏁�
- var data = Db.Queryable<BllArrivalNotice>().Where(m => m.IsDel == "0" && m.Status != "3" && m.Status != "4").Select(m => m.ASNNo).ToList();
+ var data = Db.Queryable<BllArrivalNotice>().Where(m => m.IsDel == "0" && m.Status !="2" && m.Status != "3" && m.Status != "4").Select(m => m.ASNNo).ToList();
var list = new List<ArrivalNoticeDetailDto>();
if (model.Type.Contains("0"))//0璐存爣
{
@@ -267,6 +267,42 @@
}
}
+
+
+ /// <summary>
+ /// 楠岃瘉鍦扮爜鏄惁瀛樺湪
+ /// </summary>
+ /// <param name="locatNo">鍦扮爜</param>
+ /// <returns>"":鍙娇鐢� -1:涓嶅彲浣跨敤锛堝師鍥�)</returns>
+ public string IsEnableLocatNo(string locatNo)
+ {
+ string sqlMsg = "";
+ string sqlString = string.Empty;
+ try
+ {
+ sqlString = $"select * from SysStorageLocat where LocatNo = '{locatNo}' and WareHouseNo = 'W02' and isdel = '0';";
+ var models = Db.Ado.SqlQuery<PalletBindVm>(sqlString);
+
+ if (models.Count > 0)
+ {
+ if (models[0].Status != "0")
+ {
+ sqlMsg = "-1:姝ゅ簱浣嶄娇鐢ㄤ腑锛岃鍦ㄥ簱鍐呰鏍稿疄!";
+ }
+ }
+ else
+ {
+ sqlMsg = "-1:搴撲綅涓嶅瓨鍦�!";
+ }
+
+ return sqlMsg;
+ }
+ catch (Exception ex)
+ {
+ throw ex;
+ }
+ }
+
// 鏍规嵁绠辩爜鎴栨墭鐩樺彿鑾峰彇绠辨敮淇℃伅 liudl
public List<BoxInfoDto> GetBoxInfos(BoxInfoVm model)
{
diff --git a/Wms/WMS.BLL/BllPdaServer/PdaCrServer.cs b/Wms/WMS.BLL/BllPdaServer/PdaCrServer.cs
index f4b7e60..73bf387 100644
--- a/Wms/WMS.BLL/BllPdaServer/PdaCrServer.cs
+++ b/Wms/WMS.BLL/BllPdaServer/PdaCrServer.cs
@@ -970,26 +970,30 @@
Db.BeginTran();
//璇锋眰WCS鍏ュ簱鍙f斁璐х‘璁�
- try
+ if (!string.IsNullOrEmpty(ruku))
{
- var port = new
+ try
{
- Port = EndLocat
- };
- var json = JsonConvert.SerializeObject(port);
- var res = HttpHelper.DoPost(wcsurl, json, "璇锋眰WCS鍏ュ簱鍙f槸鍚﹀彲鏀捐揣", "WCS");
+ var port = new
+ {
+ Port = EndLocat
+ };
+ var json = JsonConvert.SerializeObject(port);
+ var res = HttpHelper.DoPost(wcsurl, json, "璇锋眰WCS鍏ュ簱鍙f槸鍚﹀彲鏀捐揣", "WCS");
- //////瑙f瀽杩斿洖鏁版嵁
- var ret = JsonConvert.DeserializeObject<WcsModel>(res);
- if (ret.StatusCode == -1)
+ //////瑙f瀽杩斿洖鏁版嵁
+ var ret = JsonConvert.DeserializeObject<WcsModel>(res);
+ if (ret.StatusCode == -1)
+ {
+ throw new Exception(EndLocat + "鍙峰叆搴撳彛宸叉湁鍏朵粬浠诲姟鍗犵敤,璇烽�夋嫨鍏朵粬鍏ュ簱鍙�");
+ }
+ }
+ catch (Exception ex)
{
- throw new Exception(EndLocat + "鍙峰叆搴撳彛宸叉湁鍏朵粬浠诲姟鍗犵敤,璇烽�夋嫨鍏朵粬鍏ュ簱鍙�");
+ throw new Exception(ex.Message);
}
}
- catch (Exception ex)
- {
- throw new Exception(ex.Message);
- }
+
//娣诲姞鍑哄簱浠诲姟
@@ -1040,38 +1044,19 @@
#region 鍛煎彨灏忚溅浠g爜
var endlono = EndLocat;
-
- //鏍规嵁鐩殑鍦板潃搴撳尯鑾峰彇灏忚溅浠诲姟绫诲瀷
- switch (storageLocatEnd.AreaNo)
- {
- case "B13" :
- tasktype = "D02"; // 鍙犳墭浠诲姟锛堢洰鐨勫湴鍧�涓虹┖鎵樼洏鏀堕泦鍖猴級
- break;
- case "B15":
- tasktype = "D01"; // 鎷嗘墭浠诲姟锛堢洰鐨勫湴鍧�涓烘嫞璐у尯锛�
- break;
- }
if (OrderTy == "0")
{
tasktype = "RK0"; //鍏ュ簱浠诲姟
}
- //缂撳瓨搴撲綅杞崲 3妤煎師杈呮枡Y003_001锛孻003_002锛孻003_003 1妤糦138_001鍒癥138_021澶栧寘缂撳瓨鍖� 1妤糦128_001鍒癥128_015鍐呭寘缂撳瓨鍖�
+ //缂撳瓨搴撲綅杞崲 3妤兼帴椹充綅Y003_001锛孻003_002锛孻003_003
if (storageLocatEnd.AreaNo == "B12")
{
switch (EndLocat.ToString().Substring(4, 1))
{
case "1":
- endlono = "Y003_00" + EndLocat.ToString().Substring(6, 1);
+ endlono = "Y003_0" + EndLocat.ToString().Substring(5, 2);
tasktype = "D00"; //鐐瑰埌鐐逛换鍔�
- break;
- case "2":
- endlono = "Y138_0" + EndLocat.ToString().Substring(5, 2);
- tasktype = "F20"; //鐢垫浠诲姟
- break;
- case "3":
- endlono = "Y128_0" + EndLocat.ToString().Substring(5, 2);
- tasktype = "F20"; //鐢垫浠诲姟
break;
default:
break;
@@ -1297,21 +1282,13 @@
break;
}
- //缂撳瓨搴撲綅杞崲 3妤煎師杈呮枡Y003_001鍒癥003_009 1妤糦138_001鍒癥138_021澶栧寘缂撳瓨鍖� 1妤糦128_001鍒癥128_015鍐呭寘缂撳瓨鍖�
+ //缂撳瓨搴撲綅杞崲 3妤煎師杈呮枡Y003_001鍒癥003_011
if (storageLocatEnd.AreaNo == "B12")
{
switch (EndLocat.ToString().Substring(4, 1))
{
case "1":
- endlono = "Y003_00" + EndLocat.ToString().Substring(6, 1);
- break;
- case "2":
- endlono = "Y138_0" + EndLocat.ToString().Substring(5, 2);
- tasktype = "F20"; //鐢垫浠诲姟
- break;
- case "3":
- endlono = "Y128_0" + EndLocat.ToString().Substring(5, 2);
- tasktype = "F20"; //鐢垫浠诲姟
+ endlono = "Y003_0" + EndLocat.ToString().Substring(5, 2);
break;
default:
break;
@@ -1427,8 +1404,203 @@
}
}
+ /// <summary>
+ /// 绌烘墭鐩樺叆搴撳懠鍙皬杞�
+ /// </summary>
+ /// <param name="palletNo"></param>
+ /// <param name="areaNo"></param>
+ /// <param name="ruku"></param>
+ public void AgvTransport3(string palletNo, string LocatNo, string ruku, int userId, string url, string wcsurl)
+ {
+ if (string.IsNullOrEmpty(palletNo))
+ {
+ throw new Exception("璇锋壂鎻忔墭鐩樻潯鐮侊紒");
+ }
+ if (string.IsNullOrEmpty(ruku))
+ {
+ throw new Exception("璇烽�夋嫨鍏ュ簱鍙o紒");
+ }
+ try
+ {
+ if (ruku == "001")
+ {
+ var xlocate = Db.Queryable<SysStorageLocat>().First(w => w.Status == "0" && (w.LocatNo == "B13010101" || w.LocatNo == "B13020101" || w.LocatNo == "B13030101"));
+ if (xlocate == null)
+ {
+ throw new Exception("绌烘墭鐩樻敹闆嗗櫒宸叉弧");
+ }
+ ruku = Db.Queryable<SysStorageLocat>().First(w => w.Status == "0" && (w.LocatNo == "B13010101" || w.LocatNo == "B13020101" || w.LocatNo == "B13030101")).LocatNo;
+ }
+ if (ruku == "002")
+ {
+ var dlocate = Db.Queryable<SysStorageLocat>().First(w => w.Status == "0" && (w.LocatNo == "B13040101" || w.LocatNo == "B13050101" || w.LocatNo == "B13060101"));
+ if (dlocate == null)
+ {
+ throw new Exception("绌烘墭鐩樻敹闆嗗櫒宸叉弧");
+ }
+ ruku = Db.Queryable<SysStorageLocat>().First(w => w.Status == "0" && (w.LocatNo == "B13040101" || w.LocatNo == "B13050101" || w.LocatNo == "B13060101")).LocatNo;
+ }
+ if (ruku == null)
+ {
+ throw new Exception("褰撳墠鎵樼洏鏀堕泦鍣ㄥ伐浣嶆棤绌轰綑锛岃灏嗙┖鎵樼洏鍨涘叆绔嬩綋搴�");
+ }
+ string EndLocat = ruku;//鐩爣浣嶇疆
+ string OrderTy = ruku.Length ==3 ? "0":"2";
+ var tasktype = "RK0"; //鍏ュ簱浠诲姟
+ int palnoqty = 1;
+ var log = Db.Queryable<LogTask>().First(w => w.IsDel == "0" && w.PalletNo == palletNo && (w.Status == "0" || w.Status == "1"));
+ if (log != null)
+ {
+ throw new Exception("璇ユ墭鐩樺凡鏈夊皬杞︾瓑寰呮墽琛屾垨姝e湪鎵ц鐨勪换鍔�!");
+ }
+ //璧峰鍌ㄤ綅淇℃伅
+ var storageLocat = Db.Queryable<SysStorageLocat>().First(w => w.IsDel == "0" && w.LocatNo == LocatNo);
+ if (storageLocat == null)
+ {
+ throw new Exception("鍌ㄤ綅淇℃伅涓嶅瓨鍦�,璇锋鏌�!");
+ }
+
+ //寮�鍚簨鍔�
+ Db.BeginTran();
+ if (EndLocat.Length == 3)
+ {
+ //璇锋眰WCS鍏ュ簱鍙f斁璐х‘璁�
+ try
+ {
+ var port = new
+ {
+ Port = EndLocat
+ };
+ var json = JsonConvert.SerializeObject(port);
+ var res = HttpHelper.DoPost(wcsurl, json, "璇锋眰WCS鍏ュ簱鍙f槸鍚﹀彲鏀捐揣", "WCS");
+
+ //////瑙f瀽杩斿洖鏁版嵁
+ var ret = JsonConvert.DeserializeObject<WcsModel>(res);
+ if (ret.StatusCode == -1)
+ {
+ throw new Exception(EndLocat + "鍙峰叆搴撳彛宸叉湁鍏朵粬浠诲姟鍗犵敤,璇烽�夋嫨鍏朵粬鍏ュ簱鍙�");
+ }
+ }
+ catch (Exception ex)
+ {
+ throw new Exception(ex.Message);
+ }
+ }
+ else
+ {
+ tasktype = "D02";
+ palnoqty = (int)Db.Queryable<BllPalletBind>().First(w => w.PalletNo == palletNo && w.Status == "1" && w.IsDel == "0").Qty;
+
+ }
+
+ //娣诲姞鍏ュ簱浠诲姟
+ var taskNo = new Common().GetMaxNo("TK");
+ var exTask = new LogTask
+ {
+ TaskNo = taskNo,
+ Sender = "WMS",
+ Receiver = "AGV",
+ IsSuccess = 0, //鏄惁涓嬪彂鎴愬姛 0澶辫触 1鎴愬姛
+
+ StartLocat = LocatNo,//璧峰浣嶇疆
+ EndLocat = EndLocat,//鐩爣浣嶇疆
+ PalletNo = palletNo,//鎵樼洏鐮�
+ Msg = string.Format("杞繍浠诲姟锛歿0}=>>{1}", LocatNo, EndLocat),
+ IsSend = 0,//鏄惁鍙啀娆′笅鍙�
+ IsCancel = 0,//鏄惁鍙彇娑�
+ IsFinish = 0,//鏄惁鍙畬鎴�
+ Type = OrderTy,//浠诲姟绫诲瀷 0 鍏ュ簱浠诲姟 1 鍑哄簱浠诲姟 2 绉诲簱浠诲姟
+ Status = "0",//浠诲姟鐘舵��0锛氱瓑寰呮墽琛�1姝e湪鎵ц2鎵ц瀹屾垚
+ OrderType = OrderTy,//0 鍏ュ簱鍗� 1 鍑哄簱鍗� 2 鐩樼偣鍗� 3 绉诲簱鍗�
+
+ CreateTime = DateTime.Now
+ };
+ Db.Insertable(exTask).ExecuteCommand();
+
+ //淇敼璧峰鍌ㄤ綅鍦板潃鐘舵��
+ storageLocat.Status = "5";//0锛氱┖鍌ㄤ綅 1锛氭湁鐗╁搧 2锛氬叆搴撲腑 3锛氬嚭搴撲腑 4锛氱Щ鍏ヤ腑 5锛氱Щ鍑轰腑
+ Db.Updateable(storageLocat).ExecuteCommand();
+
+ //娣诲姞鎿嶄綔鏃ュ織璁板綍
+ var k = new OperationCrServer().AddLogOperationCr("PDA妯″潡", "绌烘墭鍏ュ簱", palletNo, OrderTy == "0" ? "鍏ュ簱" : "绉诲簱", $"PDA鍛煎彨灏忚溅瀵规墭鐩樺彿锛歿palletNo}鍙戣捣杞繍", userId);
+
+ #region 鍛煎彨灏忚溅浠g爜
+
+ //鐐瑰埌鐐规寚浠ら泦鍚�
+ object[] position = new object[2];
+ position[0] = new
+ {
+ positionCode = LocatNo,
+ type = "00"
+ };
+ position[1] = new
+ {
+ positionCode = EndLocat,
+ type = "00"
+ };
+
+ List<AgvSchedulingTask> agvTaskList = new List<AgvSchedulingTask>();
+
+
+ AgvSchedulingTask agvTask = new AgvSchedulingTask();
+ Random r = new Random();
+ long ran = DateTime.Now.Ticks;
+ agvTask.ReqCode = ran.ToString();
+ agvTask.TaskCode = taskNo;
+ agvTask.TaskTyp = tasktype;
+ agvTask.PositionCodePath = position;
+ agvTask.CtnrTyp = palnoqty.ToString();
+
+ agvTaskList.Add(agvTask);
+
+
+ // 姝e紡杩愯绋嬪簭鏀惧紑
+ string str = "";
+ var list2 = agvTaskList.Select(m => m.TaskCode).ToList();
+ var jsonData = JsonConvert.SerializeObject(agvTaskList);
+ jsonData = jsonData.Substring(1, jsonData.Length - 1);
+ jsonData = jsonData.Substring(0, jsonData.Length - 1);
+ string response = "";
+
+ try
+ {
+ var time1 = DateTime.Now;//鍙戦�佹椂闂� .ToString("yyyy-MM-dd HH:mm:ss")
+ response = HttpHelper.DoPost(url, jsonData, "涓嬪彂缁橝GV杞繍鍛戒护", "AGV");
+ var time2 = DateTime.Now;//杩斿洖鏃堕棿 .ToString("yyyy-MM-dd HH:mm:ss")
+
+ //////瑙f瀽杩斿洖鏁版嵁
+ var agvModel = JsonConvert.DeserializeObject<OutCommanAgvDto>(response);
+ if (agvModel.Code == "0")
+ {
+ //鏇存敼浠诲姟鐨勫彂閫佽繑鍥炴椂闂�//
+ new TaskServer().EditTaskIssueOk(list2, time1, time2);
+ str += "涓嬪彂鎴愬姛";
+ }
+ if (agvModel.Code == "1")
+ {
+ new TaskServer().EditTaskIssueNo(list2, time1, time2, agvModel.Message);
+ throw new Exception(agvModel.Message);
+ }
+ }
+ catch (Exception ex)
+ {
+ throw new Exception(ex.Message);
+ }
+
+ #endregion
+
+ //鎻愪氦浜嬪姟
+ Db.CommitTran();
+ }
+ catch (Exception ex)
+ {
+ Db.RollbackTran();
+ throw new Exception(ex.Message);
+ }
+ }
+
#region
-
+
/// <summary>
/// agv璋冨害浠诲姟涓嬪彂
/// </summary>
@@ -1458,21 +1630,13 @@
break;
}
- // MES鐢宠澶囨枡锛屽鏂欏尯搴撲綅闇�瑕佽浆鎹� 杞﹂棿澶囨枡缂撳瓨浣嶅悕绉帮細3妤煎師杈呮枡Y003_001-->Y003_003 1妤煎鍖呯紦瀛樺尯Y138_001-->Y138_021 1妤煎唴鍖呯紦瀛樺尯Y128_001-->Y128_015
+ // MES鐢宠澶囨枡锛屽鏂欏尯搴撲綅闇�瑕佽浆鎹� 杞﹂棿澶囨枡缂撳瓨浣嶅悕绉帮細Y003_001-->Y003_011
if (storageLocatEnd.AreaNo == "B12")
{
switch (endlono.ToString().Substring(4, 1))
{
case "1":
- endlono = "Y003_00" + endlono.Substring(6, 1);
- break;
- case "2":
- endlono = "Y138_0" + endlono.Substring(5, 2);
- tasktype = "F20"; //鐢垫浠诲姟
- break;
- case "3":
- endlono = "Y128_0" + endlono.Substring(5, 2);
- tasktype = "F20"; //鐢垫浠诲姟
+ endlono = "Y003_0" + endlono.Substring(5, 2);
break;
default:
break;
@@ -1618,6 +1782,7 @@
endLocat = locatInfo3.LocatNo;
}
}
+
return endLocat;
}
catch (Exception ex)
@@ -1634,7 +1799,15 @@
/// <returns></returns>
public void AgvContinue(string taskno,string url)
{
- var data = new { reqCode =taskno };
+
+ Random r = new Random();
+ long ran = DateTime.Now.Ticks;
+ var ReqCode = ran.ToString();
+ var data = new
+ {
+ reqCode = ReqCode,
+ taskCode = taskno
+ };
var jsonData = JsonConvert.SerializeObject(data);
try
{
@@ -1745,15 +1918,19 @@
//var boxno = boxInfo.GroupBy(w => w.BoxNo).ToList();
var boxno = Db.Queryable<DataBoxInfo>().Where(m => m.IsDel == "0" && m.StockDetailId == item.Id).GroupBy(m => new
{
- m.BoxNo
+ m.BoxNo,
+ m.ProductionTime,
+ m.ExpirationTime,
}).Select(it => new DataBoxInfo()
{
- BoxNo = it.BoxNo
+ BoxNo = it.BoxNo,
+ ProductionTime = it.ProductionTime,
+ ExpirationTime = it.ExpirationTime,
}).ToList();
//璁板綍鎵樼洏涓婁俊鎭粰MES
foreach (var item2 in boxno) {
- var a = item.ProductionTime.ToString();
+ //var a = item.ProductionTime.ToString();
data.Add(new RequertBeiliaoInfoModel()
{
no = item2.BoxNo,
@@ -1761,8 +1938,8 @@
materiel_name = item.SkuName,
qty = item.Qty,
batch = item.LotNo,
- producttime = item.ProductionTime.ToString().Substring(0,10),
- expiry = item.ExpirationTime.ToString().Substring(0, 10)
+ producttime = item2.ProductionTime.ToString().Substring(0,10),
+ expiry = item2.ExpirationTime.ToString().Substring(0, 10)
});
}
@@ -1800,13 +1977,7 @@
switch (EndLocat.LocatNo.ToString().Substring(4, 1))
{
case "1":
- endlono = "Y003_00" + EndLocat.LocatNo.ToString().Substring(6, 1);
- break;
- case "2":
- endlono = "Y138_0" + EndLocat.LocatNo.ToString().Substring(5, 2);
- break;
- case"3":
- endlono = "Y128_0" + EndLocat.LocatNo.ToString().Substring(5, 2);
+ endlono = "Y003_0" + EndLocat.LocatNo.ToString().Substring(5, 2);
break;
default:
break;
diff --git a/Wms/WMS.BLL/BllPdaServer/PdaSoServer.cs b/Wms/WMS.BLL/BllPdaServer/PdaSoServer.cs
index 52a0b07..12de074 100644
--- a/Wms/WMS.BLL/BllPdaServer/PdaSoServer.cs
+++ b/Wms/WMS.BLL/BllPdaServer/PdaSoServer.cs
@@ -20,6 +20,7 @@
using WMS.Entity.LogEntity;
using Model.ModelDto.SysDto;
using Model.ModelDto.BllSoDto;
+using System.Security.Policy;
namespace WMS.BLL.BllPdaServer
{
@@ -2411,6 +2412,153 @@
}
+ /// <summary>
+ /// WMS鐢宠鎷h揣绌烘墭
+ /// </summary>
+ /// <param name="model"> </param>
+ /// <param name="userId"> </param>
+ /// <param name="url"> </param>
+ /// <returns></returns>
+ /// <exception cref="Exception"></exception>
+ public string IssuePlnCehckHouseWcs(CheckModePalletVm model, int userId, string url)
+ {
+ try
+ {
+ string StartLocate = "" ,EndLocate = "";
+
+ Db.BeginTran();
+ if (model.OutMode == "001") //瑗夸晶鎷h揣浣嶅彨绌烘墭鐩�
+ {
+ var xLocate = Db.Queryable<SysStorageLocat>().First(w => w.Status == "1" && (w.LocatNo == "B13010101" || w.LocatNo == "B13020101" || w.LocatNo == "B13030101"));
+ if (xLocate == null)
+ {
+ throw new Exception("娌℃湁鍙敤鐨勭┖鎵樼洏");
+ }
+ StartLocate = Db.Queryable<SysStorageLocat>().First(w => w.Status == "1" && (w.LocatNo == "B13010101" || w.LocatNo == "B13020101" || w.LocatNo == "B13030101")).LocatNo;
+ EndLocate = "B15010101";
+ }
+ else//涓滀晶鎷h揣浣嶅彨绌烘墭鐩�
+ {
+ var dLocate = Db.Queryable<SysStorageLocat>().First(w => w.Status == "1" && (w.LocatNo == "B13030101" || w.LocatNo == "B13040101" || w.LocatNo == "B13050101"));
+ if (dLocate == null)
+ {
+ throw new Exception("娌℃湁鍙敤鐨勭┖鎵樼洏");
+ }
+ StartLocate = Db.Queryable<SysStorageLocat>().First(w => w.Status == "1" && (w.LocatNo == "B13030101" || w.LocatNo == "B13040101" || w.LocatNo == "B13050101")).LocatNo;
+ EndLocate = "B15020101";
+ }
+
+ //娣诲姞鍑哄簱浠诲姟
+ var taskNo = new Common().GetMaxNo("TK");
+ var exTask = new LogTask
+ {
+ TaskNo = taskNo,
+ Sender = "WMS",
+ Receiver = "AGV",
+ IsSuccess = 0, //鏄惁涓嬪彂鎴愬姛 0澶辫触 1鎴愬姛
+
+ StartLocat = StartLocate,//璧峰浣嶇疆
+ EndLocat = EndLocate,//鐩爣浣嶇疆
+ PalletNo = "",//鎵樼洏鐮�
+ Msg = string.Format("杞繍浠诲姟锛歿0}=>>{1}", StartLocate, EndLocate),
+ IsSend = 1,//鏄惁鍙啀娆′笅鍙�
+ IsCancel = 1,//鏄惁鍙彇娑�
+ IsFinish = 1,//鏄惁鍙畬鎴�
+ Type = "2",//浠诲姟绫诲瀷 0 鍏ュ簱浠诲姟 1 鍑哄簱浠诲姟 2 绉诲簱浠诲姟
+ Status = "0",//浠诲姟鐘舵��0锛氱瓑寰呮墽琛�1姝e湪鎵ц2鎵ц瀹屾垚
+ OrderType = "3",//0 鍏ュ簱鍗� 1 鍑哄簱鍗� 2 鐩樼偣鍗� 3 绉诲簱鍗�
+
+ CreateTime = DateTime.Now
+ };
+ Db.Insertable(exTask).ExecuteCommand();
+
+ var storageLocatEnd = Db.Queryable<SysStorageLocat>().First(w => w.LocatNo == EndLocate);
+ //淇敼鐩爣鍌ㄤ綅鍦板潃鐘舵��
+ if (storageLocatEnd != null)
+ {
+ storageLocatEnd.Status = "4";//0锛氱┖鍌ㄤ綅 1锛氭湁鐗╁搧 2锛氬叆搴撲腑 3锛氬嚭搴撲腑 4锛氱Щ鍏ヤ腑 5锛氱Щ鍑轰腑
+ Db.Updateable(storageLocatEnd).ExecuteCommand();
+ }
+
+ #region 鍛煎彨灏忚溅浠g爜
+
+ var endlono = EndLocate;
+ string tasktype = "D01";
+
+ //鐐瑰埌鐐规寚浠ら泦鍚�
+ object[] position = new object[2];
+ position[0] = new
+ {
+ positionCode = StartLocate,
+ type = "00"
+ };
+ position[1] = new
+ {
+ positionCode = endlono,
+ type = "00"
+ };
+
+ List<AgvSchedulingTask> agvTaskList = new List<AgvSchedulingTask>();
+ AgvSchedulingTask agvTask = new AgvSchedulingTask();
+ Random r = new Random();
+ long ran = DateTime.Now.Ticks;
+ agvTask.ReqCode = ran.ToString();
+ agvTask.TaskCode = taskNo;
+ agvTask.TaskTyp = tasktype;
+ agvTask.PositionCodePath = position;
+ agvTask.CtnrTyp = "1";
+
+ agvTaskList.Add(agvTask);
+
+ string str = "";
+ var list2 = agvTaskList.Select(m => m.TaskCode).ToList();
+ var jsonData = JsonConvert.SerializeObject(agvTaskList);
+ jsonData = jsonData.Substring(1, jsonData.Length - 1);
+ jsonData = jsonData.Substring(0, jsonData.Length - 1);
+ string response = "";
+
+ try
+ {
+ var time1 = DateTime.Now;//鍙戦�佹椂闂� .ToString("yyyy-MM-dd HH:mm:ss")
+ response = HttpHelper.DoPost(url, jsonData, "涓嬪彂缁橝GV杞繍鍛戒护", "AGV");
+ var time2 = DateTime.Now;//杩斿洖鏃堕棿 .ToString("yyyy-MM-dd HH:mm:ss")
+
+ //////瑙f瀽杩斿洖鏁版嵁
+ var agvModel = JsonConvert.DeserializeObject<OutCommanAgvDto>(response);
+ if (agvModel.Code == "0")
+ {
+ //鏇存敼浠诲姟鐨勫彂閫佽繑鍥炴椂闂�//
+ new TaskServer().EditTaskIssueOk(list2, time1, time2);
+ str += "涓嬪彂鎴愬姛";
+ }
+ if (agvModel.Code == "1")
+ {
+ new TaskServer().EditTaskIssueNo(list2, time1, time2, agvModel.Message);
+ throw new Exception(agvModel.Message);
+ }
+ }
+ catch (Exception ex)
+ {
+ throw new Exception(ex.Message);
+ }
+
+ #endregion
+
+ //娣诲姞鎿嶄綔鏃ュ織璁板綍
+ var k = new OperationCrServer().AddLogOperationCr("PDA妯″潡", "AGV杞繍", "", "绉诲簱", $"PDA鍛煎彨灏忚溅鎷嗙┖鎵樼洏鎷h揣", userId);
+ Db.CommitTran();
+
+ return "";
+ }
+ catch (Exception e)
+ {
+ Db.RollbackTran();
+ throw new Exception(e.Message);
+ }
+ }
+
+
+
public string MoveAddress(string oldAddress, string roadWay, string skuNo,string areaNo="")//01020201 鎺�-鍒�-灞�-娣卞害
{
string nowAddress = "";
diff --git a/Wms/WMS.BLL/BllSoServer/ExportNoticeServer.cs b/Wms/WMS.BLL/BllSoServer/ExportNoticeServer.cs
index 07842f2..68367c9 100644
--- a/Wms/WMS.BLL/BllSoServer/ExportNoticeServer.cs
+++ b/Wms/WMS.BLL/BllSoServer/ExportNoticeServer.cs
@@ -2249,7 +2249,7 @@
//鍑哄簱浠诲姟鍙锋洿鏀癸紝濡傛灉鐢盤LC鍑哄簱锛屽垯PLC鍥炰紶浠诲姟鍙蜂负锛氫换鍔″彿+瀹為檯鍑哄簱鍙�
var TtaskNo = taskNo;
var outLine = "";
- if (userId == 0)
+ if (taskNo.Length == 18)
{
TtaskNo = taskNo.Substring(0, taskNo.Length - 3);
outLine = taskNo.Substring(taskNo.Length - 3, 3);
@@ -2481,7 +2481,8 @@
agvTask.CtnrTyp = "1"; //瀹瑰櫒绫诲瀷锛屽�间负1
if (type == "D02")
{
- agvTask.CtnrNum = "10"; //鍙犳墭浠诲姟闇�瑕佷笅鍙戠┖鎵樼洏鏁伴噺
+ var palnoNum = Db.Queryable<BllPalletBind>().OrderByDescending(w=>w.Id).First(w => w.IsDel == "0" && w.PalletNo == task.PalletNo);
+ agvTask.CtnrNum = palnoNum.Qty.ToString(); //鍙犳墭浠诲姟闇�瑕佷笅鍙戠┖鎵樼洏鏁伴噺
}
agvTaskList.Add(agvTask);
@@ -3931,7 +3932,7 @@
throw new Exception("鎷h揣鏁伴噺涓嶈兘澶т簬绠卞唴鍓╀綑寰呮嫞鏁伴噺");
}
decimal pickQty = 0;//鎷h揣鐨勬暟閲�
-
+ Db.BeginTran();
var comList = new List<BllCompleteDetail>();
foreach (var item in boxInfos)
{
@@ -4038,12 +4039,12 @@
}
//淇敼鍑哄簱鍗曚俊鎭�
Db.Updateable(notice).ExecuteCommand();
-
+ Db.CommitTran();
return allot.LoadingAddre;
}
catch (Exception e)
{
-
+ Db.RollbackTran();
throw new Exception(e.Message);
}
}
diff --git a/Wms/WMS.BLL/DataServer/StockServer.cs b/Wms/WMS.BLL/DataServer/StockServer.cs
index 89c8c23..8ab0b61 100644
--- a/Wms/WMS.BLL/DataServer/StockServer.cs
+++ b/Wms/WMS.BLL/DataServer/StockServer.cs
@@ -16,6 +16,7 @@
using Utility.Tools;
using WMS.BLL.LogServer;
using WMS.DAL;
+using WMS.Entity.BllAsnEntity;
using WMS.Entity.BllSoEntity;
using WMS.Entity.Context;
using WMS.Entity.DataEntity;
@@ -1060,13 +1061,18 @@
palletNo.Status = "2"; //宸插畬鎴�
Db.Updateable(palletNo).ExecuteCommand();
- //淇敼搴撳瓨鏄庣粏
- stockDetail.Status = "0";//寰呭垎閰�
- stockDetail.LocatNo = "";
- stockDetail.AreaNo = "";
- stockDetail.RoadwayNo = "";
- stockDetail.WareHouseNo = "";
- Db.Updateable(stockDetail).ExecuteCommand();
+
+ if (stockDetail !=null)
+ {
+ //淇敼搴撳瓨鏄庣粏
+ stockDetail.Status = "0";//寰呭垎閰�
+ stockDetail.LocatNo = "";
+ stockDetail.AreaNo = "";
+ stockDetail.RoadwayNo = "";
+ stockDetail.WareHouseNo = "";
+ Db.Updateable(stockDetail).ExecuteCommand();
+ }
+
#region 涓嬪彂WCS鏀捐揣瀹屾垚
var data = new
@@ -1088,6 +1094,7 @@
throw new Exception("鏀捐揣澶辫触锛學CS杩斿洖淇℃伅閿欒");
}
}
+
catch (Exception ex)
{
throw new Exception(ex.Message);
@@ -1101,7 +1108,7 @@
}
catch (Exception ex)
{
-
+ Db.RollbackTran();
throw new Exception("AGV杩斿洖鍏ュ簱瀹屾垚淇″彿澶勭悊閿欒锛岄敊璇俊鎭細" + ex);
}
}
@@ -1110,8 +1117,9 @@
/// AGV鍑哄簱瀹屾垚
/// </summary>
/// <param name="TaskCode">浠诲姟鍙�</param>
+ /// <param name="url">鍙嶉MES澶囨枡瀹屾垚鍦板潃</param>
/// <returns></returns>
- public void SoFinish(string TaskCode)
+ public void SoFinish(string TaskCode,string url)
{
try
{
@@ -1153,12 +1161,162 @@
}
}
+
+ //瀹屾垚鎺ュ彛淇敼锛堟湭瀹屾垚锛�
+ //try
+ //{
+ // var palletNo = Db.Queryable<LogTask>().First(m => m.TaskNo == TaskCode && m.Status == "1");//鑾峰彇姝e湪鎵ц鐨勪换鍔′俊鎭�
+ // if (palletNo == null)
+ // {
+ // throw new Exception("姝や换鍔″凡瀹屾垚");
+ // }
+ // var storageLocat = Db.Queryable<SysStorageLocat>().First(w => w.IsDel == "0" && w.LocatNo == palletNo.EndLocat); //鑾峰彇搴撲綅淇℃伅
+ // var storageStart = Db.Queryable<SysStorageLocat>().First(w => w.IsDel == "0" && w.LocatNo == palletNo.StartLocat); //鑾峰彇搴撲綅淇℃伅
+ // var stockDetail = Db.Queryable<DataStockDetail>().Where(w => w.IsDel == "0" && w.PalletNo == palletNo.PalletNo).ToList();
+ // if (stockDetail.Count == 0)
+ // {
+ // throw new Exception("鎵樼洏涓婄墿鏂欏簱瀛樻槑缁嗕俊鎭笉瀛樺湪,璇锋鏌�!");
+ // }
+ // //寮�鍚簨鍔�
+ // Db.BeginTran();
+ // if (storageLocat != null)
+ // {
+ // if (storageLocat.AreaNo == "B12")//杞﹂棿缂撳瓨浣嶉渶瑕侀�氱煡MES
+ // {
+ // var data = new List<RequertBeiliaoInfoModel>();
+ // //鏇存敼搴撳瓨鏄庣粏
+ // foreach (var item in stockDetail)
+ // {
+ // item.LocatNo = item.LocatNo;//鍌ㄤ綅鏇存敼
+ // item.WareHouseNo = item.WareHouseNo;//鎵�灞炰粨搴撴洿鏀�
+ // item.RoadwayNo = item.RoadwayNo;//鎵�灞炲贩閬撴洿鏀�
+ // item.AreaNo = item.AreaNo;//鎵�灞炲尯鍩熸洿鏀�
+
+ // Db.Updateable(item).ExecuteCommand();
+
+
+ // if (string.IsNullOrWhiteSpace(item.SONo))
+ // {
+ // throw new Exception("褰撳墠鎵樼洏涓嶆槸鎷兼墭鍑哄簱鎵樼洏");
+ // }
+ // var boxInfo = Db.Queryable<DataBoxInfo>().Where(m => m.IsDel == "0" && m.StockDetailId == item.Id).ToList();
+ // if (boxInfo.Count == 0)
+ // {
+ // throw new Exception("鎵樼洏涓婄墿鏂欑鐮佷俊鎭笉瀛樺湪,璇锋鏌�!");
+ // }
+ // //var boxno = boxInfo.GroupBy(w => w.BoxNo).ToList();
+ // var boxno = Db.Queryable<DataBoxInfo>().Where(m => m.IsDel == "0" && m.StockDetailId == item.Id).GroupBy(m => new
+ // {
+ // m.BoxNo
+ // }).Select(it => new DataBoxInfo()
+ // {
+ // BoxNo = it.BoxNo
+ // }).ToList();
+
+ // //璁板綍鎵樼洏涓婁俊鎭粰MES
+ // foreach (var item2 in boxno)
+ // {
+ // var a = item.ProductionTime.ToString();
+ // data.Add(new RequertBeiliaoInfoModel()
+ // {
+ // no = item2.BoxNo,
+ // materiel_no = item.SkuNo,
+ // materiel_name = item.SkuName,
+ // qty = item.Qty,
+ // batch = item.LotNo,
+ // producttime = item.ProductionTime.ToString().Substring(0, 10),
+ // expiry = item.ExpirationTime.ToString().Substring(0, 10)
+
+ // });
+ // }
+ // //搴撳瓨绠辩爜鏄庣粏鍒犻櫎
+ // Db.Deleteable(boxInfo).ExecuteCommand();
+ // //鍒犻櫎搴撳瓨鎵樼洏淇℃伅
+ // Db.Deleteable(item).ExecuteCommand();
+ // //鏇存敼搴撳瓨鎬昏〃
+ // var stock = Db.Queryable<DataStock>().First(w => w.IsDel == "0" && w.SkuNo == item.SkuNo && w.LotNo == item.LotNo);
+ // stock.LockQty -= (decimal)item.Qty;
+ // stock.Qty -= (decimal)item.Qty;
+ // Db.Updateable(stock).ExecuteCommand();
+ // //鏇存敼鎵樼洏鐘舵��
+ // var pallet = Db.Queryable<SysPallets>().First(m => m.IsDel == "0" && m.PalletNo == palletNo);
+ // if (pallet != null)
+ // {
+ // pallet.Status = "0";
+ // Db.Updateable(pallet).ExecuteCommand();
+ // }
+
+ // }
+
+ // //鑾峰彇浠ょ墝
+ // //var token = new Token().GetMesToken(mesTokenUrl);
+ // var token = "";
+ // Dictionary<string, string> mesDic = new Dictionary<string, string>()
+ // {
+ // {"Authorization",token }
+ // };
+ // var endlono = palletNo.EndLocat;
+ // //缂撳瓨搴撲綅杞崲
+ // switch (palletNo.EndLocat.ToString().Substring(4, 1))
+ // {
+ // case "1":
+ // endlono = "Y003_00" + palletNo.EndLocat.ToString().Substring(6, 1);
+ // break;
+ // case "2":
+ // endlono = "Y138_0" + palletNo.EndLocat.ToString().Substring(5, 2);
+ // break;
+ // case "3":
+ // endlono = "Y128_0" + palletNo.EndLocat.ToString().Substring(5, 2);
+ // break;
+ // default:
+ // break;
+ // }
+ // var mescode = Db.Queryable<BllExportNotice>().Where(w => w.SONo == stockDetail.First().SONo).First();
+ // var mesData = new RequertBeiliaoModel()
+ // {
+ // morder_no = mescode.OrderCode,
+ // pallet = stockDetail.First().PalletNo,
+ // layer_no = endlono,
+ // items = data
+ // };
+ // var jsonData = JsonConvert.SerializeObject(mesData);
+ // //璋冪敤鎺ュ彛
+ // var response = HttpHelper.DoPost(url, jsonData, "澶囨枡瀹屾垚杩愯嚦缂撳瓨鍖哄弽棣堣嚦MES", "MES", mesDic);
+
+ // var obj = JsonConvert.DeserializeObject<MesModel>(response);//瑙f瀽杩斿洖鏁版嵁
+ // if (obj.status != "success")
+ // {
+ // throw new Exception("澶囨枡鍚屾MES澶辫触锛�" + obj.message);
+ // }
+
+
+ // }
+ // //淇敼鐩殑搴撲綅鐘舵��
+ // storageLocat.Status = "1";//0锛氱┖鍌ㄤ綅 1锛氭湁鐗╁搧 2锛氬叆搴撲腑 3锛氬嚭搴撲腑 4锛氱Щ鍏ヤ腑 5锛氱Щ鍑轰腑
+ // Db.Updateable(storageLocat).ExecuteCommand();
+
+ // //淇敼浠诲姟鐘舵��
+ // palletNo.Status = "2"; //宸插畬鎴�
+ // Db.Updateable(palletNo).ExecuteCommand();
+
+ // //淇敼搴撳瓨鏄庣粏
+ // item.Status = "2";// 0:寰呭垎閰� 1:閮ㄥ垎鍒嗛厤 2锛氬凡鍒嗛厤 3锛氱洏鐐归攣瀹氾細 4绉诲簱閿佸畾
+ // stockDetail.LocatNo = storageLocat.LocatNo;
+ // stockDetail.AreaNo = storageLocat.AreaNo;
+ // stockDetail.RoadwayNo = storageLocat.RoadwayNo;
+ // stockDetail.WareHouseNo = storageLocat.WareHouseNo;
+ // Db.Updateable(stockDetail).ExecuteCommand();
+ // }
+ // Db.CommitTran();
+
+ //}
/// <summary>
/// AGV绉诲簱瀹屾垚
/// </summary>
/// <param name="TaskCode">浠诲姟鍙�</param>
+ /// <param name="url">鍙嶉MES澶囨枡瀹屾垚鍦板潃</param>
/// <returns></returns>
- public void MoveFinish(string TaskCode)
+ public void MoveFinish(string TaskCode,string url)
{
try
{
@@ -1167,40 +1325,211 @@
{
throw new Exception("姝や换鍔″凡瀹屾垚");
}
- var storageLocat = Db.Queryable<SysStorageLocat>().First(w => w.IsDel == "0" && w.LocatNo == palletNo.EndLocat); //鑾峰彇搴撲綅淇℃伅
- var storageStart = Db.Queryable<SysStorageLocat>().First(w => w.IsDel == "0" && w.LocatNo == palletNo.StartLocat); //鑾峰彇搴撲綅淇℃伅
- var stockDetail = Db.Queryable<DataStockDetail>().First(w => w.IsDel == "0" && w.PalletNo == palletNo.PalletNo); //鑾峰彇搴撳瓨淇℃伅
+ var startLocat = new SysStorageLocat();
+
+ var endLocat = Db.Queryable<SysStorageLocat>().First(w => w.IsDel == "0" && w.LocatNo == palletNo.EndLocat); //鑾峰彇鐩殑搴撲綅淇℃伅
+ if (endLocat == null)
+ {
+ throw new Exception("鏈壘鍒扮浉搴旂殑鐩殑搴撲綅");
+ }
+ var storageStart = new SysStorageLocat();
+
+ int isstock = 1;
+ var bindDetail = new BllPalletBind();
+ var sysPanlno = new SysPallets();
+
+ var stockDetail = Db.Queryable<DataStockDetail>().Where(w => w.IsDel == "0" && w.PalletNo == palletNo.PalletNo).ToList(); //鑾峰彇搴撳瓨淇℃伅
+ if (stockDetail.Count == 0)
+ {
+ //鏈壘鍒板簱瀛樺悗闇�瑕佸垽鏂槸鍚︽槸绌烘墭鐩樼Щ搴�
+ isstock = 0;
+ bindDetail = Db.Queryable<BllPalletBind>().OrderByDescending(w=>w.Id).First(w => w.IsDel == "0" && w.LocatNo == palletNo.StartLocat);//鑾峰彇缁勬墭鐩樹俊鎭�
+ if (bindDetail == null)
+ {
+ bindDetail = Db.Queryable<BllPalletBind>().OrderByDescending(w => w.Id).First(w => w.IsDel == "0" && w.LocatNo == palletNo.EndLocat);//鑾峰彇缁勬墭鐩樹俊鎭�
+ if (bindDetail == null)
+ {
+ throw new Exception("鏈壘鍒扮┖鎵樼洏缁勬墭淇℃伅");
+ }
+ }
+ }
+ else
+ {
+ storageStart = Db.Queryable<SysStorageLocat>().First(w => w.IsDel == "0" && w.LocatNo == palletNo.StartLocat); //鑾峰彇璧峰搴撲綅淇℃伅
+ if (storageStart == null)
+ {
+ throw new Exception("鏈壘鍒扮浉搴旂殑璧峰搴撲綅");
+ }
+ }
//var soAllot = Db.Queryable<BllExportAllot>().First(m => m.IsDel == "0" && m.PalletNo == palletNo.PalletNo);//鑾峰彇鍒嗛厤淇℃伅
//寮�鍚簨鍔�
Db.BeginTran();
- //淇敼璧峰搴撲綅鐘舵��
- storageLocat.Status = "0";//0锛氱┖鍌ㄤ綅 1锛氭湁鐗╁搧 2锛氬叆搴撲腑 3锛氬嚭搴撲腑 4锛氱Щ鍏ヤ腑 5锛氱Щ鍑轰腑
- Db.Updateable(storageLocat).ExecuteCommand();
//淇敼鐩殑搴撲綅鐘舵��
- storageLocat.Status = "1";//0锛氱┖鍌ㄤ綅 1锛氭湁鐗╁搧 2锛氬叆搴撲腑 3锛氬嚭搴撲腑 4锛氱Щ鍏ヤ腑 5锛氱Щ鍑轰腑
- Db.Updateable(storageLocat).ExecuteCommand();
+ endLocat.Status = "1";//0锛氱┖鍌ㄤ綅 1锛氭湁鐗╁搧 2锛氬叆搴撲腑 3锛氬嚭搴撲腑 4锛氱Щ鍏ヤ腑 5锛氱Щ鍑轰腑
+ Db.Updateable(endLocat).ExecuteCommand();
//淇敼浠诲姟鐘舵��
palletNo.Status = "2"; //宸插畬鎴�
Db.Updateable(palletNo).ExecuteCommand();
- //淇敼搴撳瓨鏄庣粏
- stockDetail.Status = "2";// 0:寰呭垎閰� 1:閮ㄥ垎鍒嗛厤 2锛氬凡鍒嗛厤 3锛氱洏鐐归攣瀹氾細 4绉诲簱閿佸畾
- stockDetail.LocatNo = storageLocat.LocatNo;
- stockDetail.AreaNo = storageLocat.AreaNo;
- stockDetail.RoadwayNo = storageLocat.RoadwayNo;
- stockDetail.WareHouseNo = storageLocat.WareHouseNo;
- Db.Updateable(stockDetail).ExecuteCommand();
+ if (isstock == 1)
+ {
+ startLocat = Db.Queryable<SysStorageLocat>().First(w=> w.IsDel == "0" && w.LocatNo == palletNo.StartLocat);
+ //淇敼璧峰搴撲綅鐘舵��
+ startLocat.Status = "0";//0锛氱┖鍌ㄤ綅 1锛氭湁鐗╁搧 2锛氬叆搴撲腑 3锛氬嚭搴撲腑 4锛氱Щ鍏ヤ腑 5锛氱Щ鍑轰腑
+ Db.Updateable(startLocat).ExecuteCommand();
+
+ //璋冪敤MES澶囨枡鍙嶉瀹屾垚鎺ュ彛
+ #region MES澶囨枡瀹屾垚鍙嶉
+ var data = new List<RequertBeiliaoInfoModel>();
+
+ //鏇存敼搴撳瓨鏄庣粏
+ foreach (var item in stockDetail)
+ {
+ item.LocatNo = endLocat.LocatNo;//鍌ㄤ綅鏇存敼
+ item.WareHouseNo = endLocat.WareHouseNo;//鎵�灞炰粨搴撴洿鏀�
+ item.RoadwayNo = endLocat.RoadwayNo;//鎵�灞炲贩閬撴洿鏀�
+ item.AreaNo = endLocat.AreaNo;//鎵�灞炲尯鍩熸洿鏀�
+
+ Db.Updateable(item).ExecuteCommand();
+
+ if (endLocat != null && endLocat.AreaNo == "B12") //鏄惁鏄�3妤肩紦瀛樺尯 鏄細鍒犻櫎搴撳瓨
+ {
+ if (string.IsNullOrWhiteSpace(item.SONo))
+ {
+ throw new Exception("褰撳墠鎵樼洏涓嶆槸鎷兼墭鍑哄簱鎵樼洏");
+ }
+ var boxInfo = Db.Queryable<DataBoxInfo>().Where(m => m.IsDel == "0" && m.StockDetailId == item.Id).ToList();
+ if (boxInfo.Count == 0)
+ {
+ throw new Exception("鎵樼洏涓婄墿鏂欑鐮佷俊鎭笉瀛樺湪,璇锋鏌�!");
+ }
+ //var boxno = boxInfo.GroupBy(w => w.BoxNo).ToList();
+ var boxno = Db.Queryable<DataBoxInfo>().Where(m => m.IsDel == "0" && m.StockDetailId == item.Id).GroupBy(m => new
+ {
+ m.BoxNo,
+ m.ProductionTime,
+ m.ExpirationTime,
+ }).Select(it => new DataBoxInfo()
+ {
+ BoxNo = it.BoxNo,
+ ProductionTime = it.ProductionTime,
+ ExpirationTime = it.ExpirationTime,
+ }).ToList();
+
+ //璁板綍鎵樼洏涓婁俊鎭粰MES
+ foreach (var item2 in boxno)
+ {
+ //var a = item.ProductionTime.ToString();
+ data.Add(new RequertBeiliaoInfoModel()
+ {
+ no = item2.BoxNo,
+ materiel_no = item.SkuNo,
+ materiel_name = item.SkuName,
+ qty = item.Qty,
+ batch = item.LotNo,
+ producttime = item2.ProductionTime.ToString().Substring(0, 10),
+ expiry = item2.ExpirationTime.ToString().Substring(0, 10)
+
+ });
+ }
+ //搴撳瓨绠辩爜鏄庣粏鍒犻櫎
+ Db.Deleteable(boxInfo).ExecuteCommand();
+ //鍒犻櫎搴撳瓨鎵樼洏淇℃伅
+ Db.Deleteable(item).ExecuteCommand();
+ //鏇存敼搴撳瓨鎬昏〃
+ var stock = Db.Queryable<DataStock>().First(w => w.IsDel == "0" && w.SkuNo == item.SkuNo && w.LotNo == item.LotNo);
+ stock.LockQty -= (decimal)item.Qty;
+ stock.Qty -= (decimal)item.Qty;
+ Db.Updateable(stock).ExecuteCommand();
+ //鏇存敼鎵樼洏鐘舵��
+ var pallet = Db.Queryable<SysPallets>().First(m => m.IsDel == "0" && m.PalletNo == palletNo.PalletNo);
+ if (pallet != null)
+ {
+ pallet.Status = "0";
+ Db.Updateable(pallet).ExecuteCommand();
+ }
+ }
+ }
+ if (endLocat != null && endLocat.AreaNo == "B12")
+ {
+ //鑾峰彇浠ょ墝
+ //var token = new Token().GetMesToken(mesTokenUrl);
+ var token = "";
+ Dictionary<string, string> mesDic = new Dictionary<string, string>()
+ {
+ {"Authorization",token }
+ };
+ var endlono = endLocat.LocatNo;
+ //缂撳瓨搴撲綅杞崲
+ switch (endLocat.LocatNo.ToString().Substring(4, 1))
+ {
+ case "1":
+ endlono = "Y003_0" + endLocat.LocatNo.ToString().Substring(5, 2);
+ break;
+
+ }
+ var mescode = Db.Queryable<BllExportNotice>().Where(w => w.SONo == stockDetail.First().SONo).First();
+ var mesData = new RequertBeiliaoModel()
+ {
+ morder_no = mescode.OrderCode,
+ pallet = stockDetail.First().PalletNo,
+ layer_no = endlono,
+ items = data
+ };
+ var jsonData = JsonConvert.SerializeObject(mesData);
+ //璋冪敤鎺ュ彛
+ var response = HttpHelper.DoPost(url, jsonData, "澶囨枡瀹屾垚杩愯嚦缂撳瓨鍖哄弽棣堣嚦MES", "MES", mesDic);
+
+ var obj = JsonConvert.DeserializeObject<MesModel>(response);//瑙f瀽杩斿洖鏁版嵁
+ if (obj.status != "success")
+ {
+ throw new Exception("澶囨枡鍚屾MES澶辫触锛�" + obj.message);
+ }
+
+ }
+ #endregion
+ }
+ else //绌烘墭鐩樺鐞�
+ {
+ //淇敼缁勬墭淇℃伅
+ if (bindDetail.WareHouseNo == "W01") //1銆佺┖鎵樼洏鍨涘埌绌烘墭鐩樻敹闆嗗櫒锛�
+ {
+ bindDetail.WareHouseNo = "W02";
+ bindDetail.LocatNo = endLocat.LocatNo;
+ bindDetail.RoadwayNo = "";
+ //淇敼璧峰搴撲綅鐘舵��
+ startLocat.Status = "0";//0锛氱┖鍌ㄤ綅 1锛氭湁鐗╁搧 2锛氬叆搴撲腑 3锛氬嚭搴撲腑 4锛氱Щ鍏ヤ腑 5锛氱Щ鍑轰腑
+ Db.Updateable(startLocat).ExecuteCommand();
+ }
+ else//2銆佹嫞璐у彨绌烘墭鐩橈紝灏忚溅瀹屾垚涓�娆★紝鎵e噺涓�涓┖鎵樼洏鍨涗笂鏁伴噺
+ {
+ bindDetail.Qty = bindDetail.Qty - 1;
+ if (bindDetail.Qty == 0)//鏁伴噺涓�0鍚庢洿鏀圭粍鎵樼姸鎬佸拰鎵樼洏浣跨敤鐘舵��
+ {
+ bindDetail.Status = "2";
+ bindDetail.IsDel = "1";
+ //淇敼璧峰搴撲綅鐘舵��
+ startLocat.Status = "0";//0锛氱┖鍌ㄤ綅 1锛氭湁鐗╁搧 2锛氬叆搴撲腑 3锛氬嚭搴撲腑 4锛氱Щ鍏ヤ腑 5锛氱Щ鍑轰腑
+ Db.Updateable(startLocat).ExecuteCommand();
+ }
+ else
+ {
+ bindDetail.LocatNo = startLocat.LocatNo;//?????鎷h揣浣嶆墭鐩樺浣曞鐞嗭紝鎷h揣浣嶆槸鍚﹂渶瑕佹洿鏀圭姸鎬侊紝鏄惁闇�瑕佸鍔犲簱瀛橈紱
+ }
+ }
+ Db.Updateable(bindDetail).ExecuteCommand();
+ }
Db.CommitTran();
}
catch (Exception ex)
{
-
+ Db.RollbackTran();
throw new Exception("AGV杩斿洖绉诲簱瀹屾垚淇″彿澶勭悊閿欒锛岄敊璇俊鎭細"+ex);
}
}
@@ -1217,32 +1546,41 @@
{
try
{
- List<ReLocateDataModel> list = new List<ReLocateDataModel>();
//搴撳瓨淇℃伅
- var stockDetailsList = Db.Queryable<StockDetailDto>().ToList();
-
- if (stockDetailsList.Count == 0)
- {
- return list;
- }
- for (int i = 0; i < stockDetailsList.Count; i++)
- {
- list[i].LocatNo = stockDetailsList[i].LocatNo; //搴撲綅
- list[i].PalletNo = stockDetailsList[i].PalletNo; //鎵樼洏鍙�
- list[i].SkuName = stockDetailsList[i].SkuName; //鐗╂枡鍚嶇О
- list[i].Stadard = stockDetailsList[i].Standard; //瑙勬牸
- list[i].LotNo = stockDetailsList[i].LotNo; //鎵规
- list[i].InspectStatus = stockDetailsList[i].InspectStatus; //璐ㄩ噺鐘舵��
- list[i].Qty = stockDetailsList[i].Qty.ToString(); //搴撳瓨鏁伴噺
- list[i].Warranty = stockDetailsList[i].ExpirationTime.ToString(); //鏈夋晥鏈� ??杩囨湡鏃堕棿锛屾槸鍚﹁鏇存敼
- }
+ var stockDetailsList = Db.Queryable<DataStockDetail>().ToList();
+ var sql = "select LocatNo,PalletNo,SkuName,Standard,LotNo,InspectStatus,Qty,ExpirationTime as Warranty from DataStockDetail ";
+
+ List<ReLocateDataModel> list = Db.Ado.SqlQuery<ReLocateDataModel>(sql);
+
+ //if (stockDetailsList.Count == 0)
+ //{
+ // return list;
+ //}
+ //foreach (var item in stockDetailsList)
+ //{
+ // list.Add(item);
+
+ //}
+ //for (int i = 0; i < stockDetailsList.Count; i++)
+ //{
+
+ // list.Add(stockDetailsList);
+ // list[i].LocatNo = stockDetailsList[i].LocatNo; //搴撲綅
+ // list[i].PalletNo = stockDetailsList[i].PalletNo; //鎵樼洏鍙�
+ // list[i].SkuName = stockDetailsList[i].SkuName; //鐗╂枡鍚嶇О
+ // list[i].Stadard = stockDetailsList[i].Standard; //瑙勬牸
+ // list[i].LotNo = stockDetailsList[i].LotNo; //鎵规
+ // list[i].InspectStatus = stockDetailsList[i].InspectStatus; //璐ㄩ噺鐘舵��
+ // list[i].Qty = stockDetailsList[i].Qty.ToString(); //搴撳瓨鏁伴噺
+ // list[i].Warranty = stockDetailsList[i].ExpirationTime.ToString(); //鏈夋晥鏈� ??杩囨湡鏃堕棿锛屾槸鍚﹁鏇存敼
+ //}
return list;
}
catch (Exception ex)
{
- throw new Exception("AGV杩斿洖鍏ュ簱瀹屾垚淇″彿澶勭悊閿欒锛岄敊璇俊鎭細" + ex);
+ throw new Exception("杩斿洖搴撳瓨淇℃伅鏈夎锛岄敊璇俊鎭細" + ex);
}
}
#endregion
diff --git a/Wms/WMS.BLL/LogServer/TaskServer.cs b/Wms/WMS.BLL/LogServer/TaskServer.cs
index ca411ac..3177aa7 100644
--- a/Wms/WMS.BLL/LogServer/TaskServer.cs
+++ b/Wms/WMS.BLL/LogServer/TaskServer.cs
@@ -130,7 +130,7 @@
{
taskNo = taskNo.Substring(0, taskNo.Length - 3);
}
- var task = Db.Queryable<LogTask>().First(m => m.TaskNo == taskNo);
+ var task = Db.Queryable<LogTask>().OrderByDescending(m=>m.Id).First(m => m.TaskNo == taskNo);
if (task == null)
{
throw new Exception($"鏈煡璇㈠埌{taskNo}浠诲姟鍙风殑浠诲姟淇℃伅");
@@ -168,10 +168,11 @@
/// <param name="port"></param> 鍏ュ簱鍙�
/// <param name="url"></param> 璇锋眰鍦板潃
/// <returns></returns>
- public string GetWcsPuttype(string taskno,string port,string url)
+ public string GetWcsPuttype(string taskno,string url)
{
try
{
+ var port = Db.Queryable<LogTask>().First(m => m.TaskNo == taskno).EndLocat;
var data = new
{
Port = port,
diff --git a/Wms/WMS.BLL/SysServer/MaterialsServer.cs b/Wms/WMS.BLL/SysServer/MaterialsServer.cs
index 6492fb9..f83c050 100644
--- a/Wms/WMS.BLL/SysServer/MaterialsServer.cs
+++ b/Wms/WMS.BLL/SysServer/MaterialsServer.cs
@@ -153,7 +153,17 @@
return 2;
}
-
+ switch (matedto.Warrantydate)
+ {
+ case "1": //淇濆瓨浠ユ湀涓哄崟浣�
+ matedto.Warranty = matedto.Warranty * 30;
+ break;
+ case "2": //淇濆瓨浠ュ勾涓哄崟浣�
+ matedto.Warranty = matedto.Warranty * 365;
+ break;
+ default:
+ break;
+ }
//鏄犲皠妯″瀷
SysMaterials mate = _mapper.Map<SysMaterials>(matedto);
mate.AuditStatusNo = "9"; //瀹℃牳鐘舵��
diff --git a/Wms/WMS.BLL/SysServer/PackagServer.cs b/Wms/WMS.BLL/SysServer/PackagServer.cs
index 394029a..1305c52 100644
--- a/Wms/WMS.BLL/SysServer/PackagServer.cs
+++ b/Wms/WMS.BLL/SysServer/PackagServer.cs
@@ -56,6 +56,7 @@
L3 = m.L3Num == null ? "" : m.L3Num.ToString() + "/" + m.L3Name,
L4 = m.L4Num == null ? "" : m.L4Num.ToString() + "/" + m.L4Name,
L5 = m.L5Num == null ? "" : m.L5Num.ToString() + "/" + m.L5Name,
+
//L1Num = int.Parse(m.L1Num.ToString()),
//L1Name = m.L1Name,
//L2Num = int.Parse(m.L2Num.ToString()),
@@ -282,8 +283,8 @@
}
else
{
- packagItems.L3Num = null;
- packagItems.L3Name = null;
+ packagItems.L2Num = null;
+ packagItems.L2Name = null;
}
//鍒ゆ柇涓�绾у寘瑁呮槸鍚︿负绌�
if (!string.IsNullOrEmpty(model.L1Num) && !string.IsNullOrEmpty(model.L1Name))
diff --git a/Wms/WMS.IBLL/IDataServer/IStockServer.cs b/Wms/WMS.IBLL/IDataServer/IStockServer.cs
index 3062e6f..0e57fa5 100644
--- a/Wms/WMS.IBLL/IDataServer/IStockServer.cs
+++ b/Wms/WMS.IBLL/IDataServer/IStockServer.cs
@@ -132,17 +132,17 @@
/// <summary>
/// 鍑哄簱浠诲姟瀹屾垚
/// </summary>
- /// <param name="skuNo">鐗╂枡缂栫爜</param>
- /// <param name="skuName">鐗╂枡鍚嶇О</param>
+ /// <param name="TaskCode">浠诲姟鍙�</param>
+ /// <param name="url">鍙嶉MES澶囨枡瀹屾垚</param>
/// <returns></returns>
- public void SoFinish(string TaskCode);
+ public void SoFinish(string TaskCode,string url);
/// <summary>
/// 绉诲簱浠诲姟瀹屾垚
/// </summary>
- /// <param name="skuNo">鐗╂枡缂栫爜</param>
- /// <param name="skuName">鐗╂枡鍚嶇О</param>
+ /// <param name="TaskCode">浠诲姟鍙�</param>
+ /// <param name="url">鍙嶉MES澶囨枡瀹屾垚</param>
/// <returns></returns>
- public void MoveFinish(string TaskCode);
+ public void MoveFinish(string TaskCode,string url);
#endregion
/// <summary>
diff --git a/Wms/WMS.IBLL/ILogServer/ITaskServer.cs b/Wms/WMS.IBLL/ILogServer/ITaskServer.cs
index 24fc617..756f264 100644
--- a/Wms/WMS.IBLL/ILogServer/ITaskServer.cs
+++ b/Wms/WMS.IBLL/ILogServer/ITaskServer.cs
@@ -53,6 +53,6 @@
/// <returns>0 鍏ュ簱浠诲姟 1 鍑哄簱浠诲姟 2绉诲簱浠诲姟</returns>
public string GetTaskType(string taskNo);
- public string GetWcsPuttype(string taskno,string port,string url);
+ public string GetWcsPuttype(string taskno,string url);
}
}
diff --git a/Wms/WMS.IBLL/IPdaServer/IPdaAsnServer.cs b/Wms/WMS.IBLL/IPdaServer/IPdaAsnServer.cs
index e10b9cd..603bc51 100644
--- a/Wms/WMS.IBLL/IPdaServer/IPdaAsnServer.cs
+++ b/Wms/WMS.IBLL/IPdaServer/IPdaAsnServer.cs
@@ -29,6 +29,9 @@
// 鍒ゆ柇鎵樼洏鍙锋槸鍚﹀彲鐢�
string IsEnablePalletNo(string palletNo);
+ // 鍒ゆ柇鍦扮爜鏄惁鍙敤
+ string IsEnableLocatNo(string locatNo);
+
// 鏍规嵁绠辩爜鎴栨墭鐩樺彿鑾峰彇绠辨敮淇℃伅
List<BoxInfoDto> GetBoxInfos(BoxInfoVm model);
diff --git a/Wms/WMS.IBLL/IPdaServer/IPdaCrServer.cs b/Wms/WMS.IBLL/IPdaServer/IPdaCrServer.cs
index fd4a5f4..afbac9c 100644
--- a/Wms/WMS.IBLL/IPdaServer/IPdaCrServer.cs
+++ b/Wms/WMS.IBLL/IPdaServer/IPdaCrServer.cs
@@ -141,6 +141,14 @@
List<string> AgvTransport2(string soNo, string palletNo, string areaNo,string ruku, int userId, string url);
/// <summary>
+ /// 绌烘墭鐩樺叆搴撳懠鍙皬杞�
+ /// </summary>
+ /// <param name="palletNo"></param>
+ /// <param name="areaNo"></param>
+ /// <param name="ruku"></param>
+ void AgvTransport3(string palletNo, string locatNo, string ruku, int userId, string url, string wcsurl);
+
+ /// <summary>
/// agv浠诲姟涓嬪彂
/// </summary>
/// <param name="model"></param>
diff --git a/Wms/WMS.IBLL/IPdaServer/IPdaSoServer.cs b/Wms/WMS.IBLL/IPdaServer/IPdaSoServer.cs
index 0e8e0a5..2c01216 100644
--- a/Wms/WMS.IBLL/IPdaServer/IPdaSoServer.cs
+++ b/Wms/WMS.IBLL/IPdaServer/IPdaSoServer.cs
@@ -101,11 +101,19 @@
/// </summary>
/// <param name="model"> </param>
/// <param name="userId"> </param>
- /// <param name="url"> </param>
/// <returns></returns>
/// <exception cref="Exception"></exception>
List<OutCommandDto> IssuePlnOutHouseWcs(OutModePalletVm model, int userId);
+ /// <summary>
+ /// WMS鎷h揣鐢宠绌烘墭鍑哄簱
+ /// </summary>
+ /// <param name="model"> </param>
+ /// <param name="userId"> </param>
+ /// <param name="url"> </param>
+ /// <returns></returns>
+ /// <exception cref="Exception"></exception>
+ string IssuePlnCehckHouseWcs(CheckModePalletVm model, int userId,string url);
/// <summary>
/// 鑾峰彇骞冲簱鎵樼洏淇℃伅
diff --git a/Wms/Wms/Controllers/DownApiController.cs b/Wms/Wms/Controllers/DownApiController.cs
index 0b06f04..e558169 100644
--- a/Wms/Wms/Controllers/DownApiController.cs
+++ b/Wms/Wms/Controllers/DownApiController.cs
@@ -554,12 +554,12 @@
[HttpPost]
public IActionResult BindPlnInHouseWcs(PalletsBind model)
{
- var logStr = $@".\log\WCS\WCS鐢宠绌烘墭璺虹粦瀹�" + DateTime.Now.ToString("yyyyMMdd") + ".txt";
+ var logStr = $@".\log\WCS\WCS鍙堝彔鎵樻満鐢宠绌烘墭鍏ュ簱" + DateTime.Now.ToString("yyyyMMdd") + ".txt";
try
{
var strMsg = _paAsnSvc.BindNullPallets(model);
- return Ok(new { Success = 0, Message = "绌烘墭璺虹粦瀹氭垚鍔�", TaskList = strMsg });
+ return Ok(new { Success = 0, Message = "绌烘墭璺虹粦瀹氭垚鍔�"});
}
catch (Exception e)
{
@@ -588,6 +588,30 @@
catch (Exception e)
{
LogFile.SaveLogToFile($"WCS鐢宠绌烘墭鍑哄簱寮傚父杩斿洖锛�( {e.Message} ),", logStr);
+
+ return Ok(new ErpModel { Success = -1, Message = e.Message });
+ }
+ }
+
+ /// <summary>
+ /// WMS鎷h揣鐢宠绌烘墭鍑哄簱
+ /// </summary>
+ /// <param name="model"></param>
+ /// <returns></returns>
+ [AllowAnonymous]
+ [HttpPost]
+ public IActionResult IssuePlnCheckHouseWcs(CheckModePalletVm model)
+ {
+ var logStr = $@".\log\WCS\WMS鎷h揣鐢宠绌烘墭鍑哄簱" + DateTime.Now.ToString("yyyyMMdd") + ".txt";
+ try
+ {
+ string list = _pdaSoSvc.IssuePlnCehckHouseWcs(model, 0,_config.AgvHost+_config.GenAgvSchedulingTask);
+
+ return Ok(new { Success = 0, Message = "鎷h揣鍙┖鎵樼洏鎴愬姛"});
+ }
+ catch (Exception e)
+ {
+ LogFile.SaveLogToFile($"WMS鎷h揣鐢宠绌烘墭鍑哄簱寮傚父杩斿洖锛�( {e.Message} ),", logStr);
return Ok(new ErpModel { Success = -1, Message = e.Message });
}
@@ -741,13 +765,13 @@
{
//杩斿洖鍑哄簱鍒嗘嫞瑁呰溅鍙�
var list = _exNoticeSvc.BoxInfoExportWcs(model.BoxNo);
- return Ok(new { Success = 1, Message = "鎴愬搧绠辩爜鎷嗗灈鎷h揣鎴愬姛", loadubgAddre = list });
+ return Ok(new { Success = "1", Message = "鎴愬搧绠辩爜鎷嗗灈鎷h揣鎴愬姛", loadubgAddre = list });
}
catch (Exception e)
{
LogFile.SaveLogToFile($"WCS鐢宠鎴愬搧绠辩爜鎷嗗灈鎷h揣寮傚父杩斿洖锛�( {e.Message} ),", logStr);
- return Ok(new ErpModel { Success = -1, Message = e.Message });
+ return Ok(new { Success = "-1", Message = e.Message, loadubgAddre ="" });
}
}
@@ -785,10 +809,10 @@
switch (orderType)
{
case "0"://鍏ュ簱浠诲姟鎵ц
- if (model.TaskTyp == "mid") //AGV鍒拌揪鍏ュ簱鍙o紝璇锋眰鏀捐揣
+ if (model.Method == "mid") //AGV鍒拌揪鍏ュ簱鍙o紝璇锋眰鏀捐揣
{
//涓嬪彂WCS鏀捐揣璇锋眰
- var ret = _taskSvc.GetWcsPuttype(model.TaskCode,model.CurrentCallCode,_config.WcsHost + _config.HttpInRequest);
+ var ret = _taskSvc.GetWcsPuttype(model.TaskCode,_config.WcsHost + _config.HttpInRequest);
if (ret.Contains("-1"))
{
logStr = $@".\log\WCS\浠诲姟鍙嶉" + DateTime.Now.ToString("yyyyMMdd") + ".txt";
@@ -796,23 +820,21 @@
return Ok(new OutCommanAgvDto { Code = "1", Message = "澶辫触", ReqCode = model.ReqCode });
}
}
- else if (model.TaskTyp == "end")//AGV鏀捐揣鍒板叆搴撳彛瀹屾垚
+ else if (model.Method == "end")//AGV鏀捐揣鍒板叆搴撳彛瀹屾垚
{
_stockSvc.ArriveFinish(model.TaskCode,_config.WcsHost + _config.HttpInFinish);
-
-
}
break;
case "1"://鍑哄簱浠诲姟鎵ц
- _stockSvc.SoFinish(model.TaskCode);
+ _stockSvc.SoFinish(model.TaskCode,_config.MesHost + _config.MesBeiLiaoUrl);
break;
case "2"://鐩樺簱浠诲姟鎵ц
case "3"://绉诲簱浠诲姟鎵ц
- _stockSvc.MoveFinish(model.TaskCode);
+ _stockSvc.MoveFinish(model.TaskCode, _config.MesHost + _config.MesBeiLiaoUrl);
break;
// return Ok(new OutCommanAgvDto { Code = "0", Message = "鎴愬姛", ReqCode = model.ReqCode });
diff --git a/Wms/Wms/Controllers/PdaAsnController.cs b/Wms/Wms/Controllers/PdaAsnController.cs
index 1a909b5..8e48743 100644
--- a/Wms/Wms/Controllers/PdaAsnController.cs
+++ b/Wms/Wms/Controllers/PdaAsnController.cs
@@ -128,6 +128,33 @@
}
/// <summary>
+ /// 鍒ゆ柇鎵樼洏鏄惁鍙敤
+ /// </summary>
+ /// <param name="model">PalletNo锛氭墭鐩樻潯鐮�</param>
+ /// <returns></returns>
+ [HttpPost]
+ public IActionResult IsEnableLocatNo(PalletBindVm model)
+ {
+ try
+ {
+ var strMsg = _PdaAsnSvc.IsEnableLocatNo(model.LocatNo);
+
+ if (strMsg == "")
+ {
+ return Ok(new { code = 0, msg = "鍦扮爜鍙敤!" });
+ }
+ else
+ {
+ return Ok(new { code = 1, msg = strMsg });
+ }
+ }
+ catch (Exception e)
+ {
+ return Ok(new { code = 1, msg = e.Message });
+ }
+ }
+
+ /// <summary>
/// 鑾峰彇鍗曟嵁鏄庣粏鍒楄〃
/// </summary>
/// <param name="model">AsnNo:鍗曟嵁鍙�</param>
diff --git a/Wms/Wms/Controllers/PdaCrController.cs b/Wms/Wms/Controllers/PdaCrController.cs
index b2f5c9f..a71da39 100644
--- a/Wms/Wms/Controllers/PdaCrController.cs
+++ b/Wms/Wms/Controllers/PdaCrController.cs
@@ -414,6 +414,39 @@
return Ok(new { data = "", code = 1, msg = $"寮傚父锛歿e.Message}" });
}
}
+
+ /// <summary>
+ /// 绌烘墭鐩樺叆搴撳懠鍙皬杞�
+ /// </summary>
+ /// <param name="model"></param>
+ /// <returns></returns>
+ [HttpPost]
+ public IActionResult AgvTransport3(PdaAgvTransNullPalnoModel 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 = "鏈幏鍙栧埌褰撳墠鎿嶄綔浜轰俊鎭�" });
+ }
+
+ var uId = int.Parse(userId);
+ _pdaCrSvc.AgvTransport3(model.PalletNo, model.LocatNo, model.Ruku, uId, _config.AgvHost + _config.GenAgvSchedulingTask, _config.WcsHost + _config.HttpInConfirm);
+
+ return Ok(new { data = "", code = 0, msg = "鎴愬姛" });
+ }
+ catch (Exception e)
+ {
+ return Ok(new { data = "", code = 1, msg = $"寮傚父锛歿e.Message}" });
+ }
+ }
#endregion
#region 浜哄伐杞繍
--
Gitblit v1.8.0