From d6701762ff6c9ac836015f4c53ea4aca0f4b3b46 Mon Sep 17 00:00:00 2001
From: kyy <3283105747@qq.com>
Date: 星期三, 19 十一月 2025 14:38:01 +0800
Subject: [PATCH] 1、外仓扫码
---
service/Warehouse/MesInvItemInCDetailsManager.cs | 123 ++++++++++++++++++++++++++++++++++++++++
1 files changed, 122 insertions(+), 1 deletions(-)
diff --git a/service/Warehouse/MesInvItemInCDetailsManager.cs b/service/Warehouse/MesInvItemInCDetailsManager.cs
index ee58fca..f44dbfc 100644
--- a/service/Warehouse/MesInvItemInCDetailsManager.cs
+++ b/service/Warehouse/MesInvItemInCDetailsManager.cs
@@ -1,4 +1,4 @@
-锘縰sing Masuit.Tools.Models;
+using Masuit.Tools.Models;
using Microsoft.AspNetCore.SignalR.Protocol;
using NewPdaSqlServer.DB;
using NewPdaSqlServer.Dto.service;
@@ -12,6 +12,7 @@
using System.Data;
using System.Data.SqlClient;
using static Microsoft.EntityFrameworkCore.DbLoggerCategory;
+using DbHelperSQL = NewPdaSqlServer.DB.DbHelperSQL;
namespace NewPdaSqlServer.service.Warehouse;
@@ -1027,6 +1028,126 @@
};
}
+ public dynamic WcsmBar(WarehouseQuery entity)
+ {
+ if (entity == null) throw new ArgumentNullException(nameof(entity), "鍙傛暟瀵硅薄涓嶈兘涓� null");
+
+ // 鍙傛暟鏍¢獙
+ if (string.IsNullOrEmpty(entity.userName?.ToString()))
+ throw new ArgumentException("鎿嶄綔浜哄憳涓嶅厑璁镐负绌�", nameof(entity.userName));
+
+ if (string.IsNullOrEmpty(entity.barcode?.ToString()))
+ throw new ArgumentException("鏉$爜涓嶅厑璁镐负绌�", nameof(entity.barcode));
+
+ var _strMsg = "";
+ var _status = -1;
+ using (var conn = new SqlConnection(DbHelperSQL.strConn))
+ {
+ using (var cmd = new SqlCommand("prc_pda_wcsm", conn))
+ {
+ try
+ {
+ conn.Open();
+ cmd.CommandType = CommandType.StoredProcedure;
+ // 鏍规嵁瀛樺偍杩囩▼璁剧疆鍙傛暟
+ SqlParameter[] parameters =
+ {
+ new SqlParameter("@pi_user", SqlDbType.NVarChar, 100) { Value = entity.userName },
+ new SqlParameter("@pi_barcode", SqlDbType.NVarChar, 100) { Value = entity.barcode },
+ new SqlParameter("@pi_sectionCode", SqlDbType.NVarChar, 100) { Value = entity.sectionCode == null ? DBNull.Value : (object)entity.sectionCode },
+ new SqlParameter("@pi_IN1", SqlDbType.NVarChar, 30) { Value = DBNull.Value }, // 澶囩敤瀛楁1
+ new SqlParameter("@pi_IN2", SqlDbType.NVarChar, 30) { Value = DBNull.Value }, // 澶囩敤瀛楁2
+ new SqlParameter("@po_outMsg", SqlDbType.NVarChar, 2000) { Direction = ParameterDirection.Output },
+ new SqlParameter("@po_outSum", SqlDbType.Int) { Direction = ParameterDirection.Output }
+ };
+
+ foreach (var parameter in parameters)
+ cmd.Parameters.Add(parameter);
+
+ cmd.ExecuteNonQuery();
+
+ _strMsg = parameters[5].Value?.ToString() ?? "";
+ _status = Convert.ToInt32(parameters[6].Value ?? -1);
+
+ if (_status <= 0) throw new Exception(_strMsg);
+
+ return new
+ {
+ message = _strMsg,
+ status = _status,
+ userName = entity.userName,
+ barcode = entity.barcode,
+ sectionCode = entity.sectionCode
+ };
+ }
+ catch (Exception ex)
+ {
+ throw new Exception($"澶栦粨鎵爜鍏ュ簱澶辫触锛歿ex.Message}");
+ }
+ finally
+ {
+ conn.Close();
+ }
+ }
+ }
+ }
+
+ public dynamic WcsmDetail(WarehouseQuery entity)
+ {
+ if (entity == null) throw new ArgumentNullException(nameof(entity), "鍙傛暟瀵硅薄涓嶈兘涓� null");
+
+ // 鍙傛暟鏍¢獙
+ if (string.IsNullOrEmpty(entity.barcode?.ToString()))
+ throw new ArgumentException("鏉$爜涓嶅厑璁镐负绌�", nameof(entity.barcode));
+
+ // 浣跨敤ADO.NET鐩存帴璋冪敤瀛樺偍杩囩▼
+ var ds = new DataSet();
+
+ // 鍋囪鎮ㄤ娇鐢ㄧ殑鏄疭QL Server锛屽垱寤篠qlConnection
+ using (var conn = new SqlConnection(DbHelperSQL.strConn))
+ {
+ conn.Open();
+
+ using (var cmd = new SqlCommand("prc_pda_wcsm_detailList", conn))
+ {
+ cmd.CommandType = CommandType.StoredProcedure;
+
+ // 娣诲姞鍙傛暟
+ cmd.Parameters.Add(new SqlParameter("@daa001", entity.barcode));
+ cmd.Parameters.Add(new SqlParameter("@pi_orgId", DBNull.Value));
+ cmd.Parameters.Add(new SqlParameter("@inP1", DBNull.Value));
+ cmd.Parameters.Add(new SqlParameter("@inP2", DBNull.Value));
+ cmd.Parameters.Add(new SqlParameter("@inP3", DBNull.Value));
+ cmd.Parameters.Add(new SqlParameter("@inP4", DBNull.Value));
+
+ using (var adapter = new System.Data.SqlClient.SqlDataAdapter(cmd))
+ {
+ adapter.Fill(ds);
+ }
+ }
+ }
+
+ // 楠岃瘉缁撴灉闆嗘暟閲�
+ if (ds.Tables.Count < 4)
+ {
+ throw new ApplicationException($"瀛樺偍杩囩▼杩斿洖鐨勭粨鏋滈泦鏁伴噺涓嶈冻锛屾湡鏈�4涓紝瀹為檯{ds.Tables.Count}涓�");
+ }
+
+ // 杞崲缁撴灉锛堢粺涓�浣跨敤ds锛�
+ var unscannedList = Db.Utilities.DataTableToDynamic(ds.Tables[0]);
+ var otherUnscannedList = Db.Utilities.DataTableToDynamic(ds.Tables[1]);
+ var scanProgressList = Db.Utilities.DataTableToDynamic(ds.Tables[2]);
+ var daaInfo = Db.Utilities.DataTableToDynamic(ds.Tables[3]);
+
+ return new
+ {
+ unscannedList,
+ otherUnscannedList,
+ scanProgressList,
+ daaInfo
+ };
+ }
+
public (List<MesInvItemIns> Items, int TotalCount) GetInvItemInsList(
WarehouseQuery query)
{
--
Gitblit v1.9.3