wbc
2025-11-01 9b6f4dbc6d19664da69e8d9bb7b8b1e16d19ffcb
托板码绑定解绑pda基础修改
已修改1个文件
已添加5个文件
431 ■■■■■ 文件已修改
Controllers/Warehouse/tbbdController.cs 71 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Controllers/Warehouse/tbjbController.cs 71 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Dto/service/TbBarcodeQuery.cs 14 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
appsettings.json 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
service/Warehouse/tbbdManager.cs 137 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
service/Warehouse/tbjbManager.cs 136 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Controllers/Warehouse/tbbdController.cs
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,71 @@
using System.Dynamic;
using Microsoft.AspNetCore.Mvc;
using NewPdaSqlServer.Dto.service;
using NewPdaSqlServer.service.@base;
using NewPdaSqlServer.service.Warehouse;
using NewPdaSqlServer.util;
namespace NewPdaSqlServer.Controllers.Warehouse;
/// <summary>
///     æ‰˜æ¿ç ç»‘定相关接口
/// </summary>
[Route("api/[controller]")]
[ApiController]
public class tbbdController : BaseController
{
    private readonly tbbdManager _manager = new();
    private readonly MesPrintMangeer _mCf = new();
    /// <summary>
    ///     èŽ·å–å½“å‰æ‰˜æ¿æ‰€æœ‰å·²ç»ç»‘å®šçš„æ¡ç æ˜Žç»†
    /// </summary>
    /// <returns>条码明细列表</returns>
    [HttpPost("GetBracodeDetails")]
    public ResponseResult GetBracodeDetails([FromBody] TbBarcodeQuery query)
    {
        try
        {
            dynamic resultInfos = new ExpandoObject();
            resultInfos.tbBillList = _manager.GetBracodeDetails(query);
            return new ResponseResult
            {
                status = 0,
                message = "OK",
                data = resultInfos
            };
        }
        catch (Exception ex)
        {
            return ResponseResult.ResponseError(ex);
        }
    }
    /// <summary>
    ///     èŽ·å–å½“å‰æ‰˜æ¿æ‰€æœ‰å·²ç»ç»‘å®šçš„æ¡ç æ˜Žç»†
    /// </summary>
    /// <returns>条码明细列表</returns>
    [HttpPost("ScanTBBD")]
    public ResponseResult ScanTBBD([FromBody] TbBarcodeQuery query)
    {
        try
        {
            dynamic resultInfos = new ExpandoObject();
            resultInfos.tbBillList = _manager.ScanTBBD(query);
            return new ResponseResult
            {
                status = 0,
                message = "OK",
                data = resultInfos
            };
        }
        catch (Exception ex)
        {
            return ResponseResult.ResponseError(ex);
        }
    }
}
Controllers/Warehouse/tbjbController.cs
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,71 @@
using System.Dynamic;
using Microsoft.AspNetCore.Mvc;
using NewPdaSqlServer.Dto.service;
using NewPdaSqlServer.service.@base;
using NewPdaSqlServer.service.Warehouse;
using NewPdaSqlServer.util;
namespace NewPdaSqlServer.Controllers.Warehouse;
/// <summary>
///     æ‰˜æ¿ç ç»‘定相关接口
/// </summary>
[Route("api/[controller]")]
[ApiController]
public class tbjbController : BaseController
{
    private readonly tbjbManager _manager = new();
    private readonly MesPrintMangeer _mCf = new();
    /// <summary>
    ///     èŽ·å–å½“å‰æ‰˜æ¿æ‰€æœ‰å·²ç»ç»‘å®šçš„æ¡ç æ˜Žç»†
    /// </summary>
    /// <returns>条码明细列表</returns>
    [HttpPost("GetBracodeDetails")]
    public ResponseResult GetBracodeDetails([FromBody] TbBarcodeQuery query)
    {
        try
        {
            dynamic resultInfos = new ExpandoObject();
            resultInfos.tbBillList = _manager.GetBracodeDetails(query);
            return new ResponseResult
            {
                status = 0,
                message = "OK",
                data = resultInfos
            };
        }
        catch (Exception ex)
        {
            return ResponseResult.ResponseError(ex);
        }
    }
    /// <summary>
    ///     èŽ·å–å½“å‰æ‰˜æ¿æ‰€æœ‰å·²ç»ç»‘å®šçš„æ¡ç æ˜Žç»†
    /// </summary>
    /// <returns>条码明细列表</returns>
    [HttpPost("ScanTBJB")]
    public ResponseResult ScanTBJB([FromBody] TbBarcodeQuery query)
    {
        try
        {
            dynamic resultInfos = new ExpandoObject();
            resultInfos.tbBillList = _manager.ScanTBJB(query);
            return new ResponseResult
            {
                status = 0,
                message = "OK",
                data = resultInfos
            };
        }
        catch (Exception ex)
        {
            return ResponseResult.ResponseError(ex);
        }
    }
}
Dto/service/TbBarcodeQuery.cs
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,14 @@
using NewPdaSqlServer.Dto.@base;
namespace NewPdaSqlServer.Dto.service;
public class TbBarcodeQuery : Page
{
    public string? TbBarCode { get; set; } //托板条码
    public string? ItemBarcode { get; set; }//物料条码
    public string? userName { get; set; }//用户
}
appsettings.json
@@ -10,7 +10,7 @@
    "TestErpUrl": "http://192.168.1.149:8066/WebService1.asmx/MesToErpinfoTest",
    "ProductionErpUrl": "http://192.168.1.149:8066/WebService1.asmx/MesToErpinfoTest",
    //"DataBaseConn": "Data Source=192.168.1.146,12468;Initial Catalog=TEST_MES;User ID=testUser;Password =qixi1qaz@WSXtest;Encrypt=True;TrustServerCertificate=True;"
    "DataBaseConn": "Data Source=192.168.8.8;Initial Catalog=YS_MES;User ID=sa;Password =JianHui@2025;Encrypt=True;TrustServerCertificate=True;"
    "DataBaseConn": "Data Source=192.168.8.8;Initial Catalog=GS_MES;User ID=sa;Password =JianHui@2025;Encrypt=True;TrustServerCertificate=True;"
  },
  "Version": "1.0.0",
  "X-KDApi-AcctID": "6244701c616bff",
service/Warehouse/tbbdManager.cs
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,137 @@
using MES.Service.Modes;
using NewPdaSqlServer.DB;
using NewPdaSqlServer.Dto.service;
using NewPdaSqlServer.entity;
using NewPdaSqlServer.entity.Base;
using SqlSugar;
using System.Data;
using System.Data.SqlClient;
using static Microsoft.EntityFrameworkCore.DbLoggerCategory;
namespace NewPdaSqlServer.service.Warehouse;
/// <summary>
///     æ‰˜æ¿ç ç»‘定管理类
///     è´Ÿè´£å¤„理托板码绑定相关的业务逻辑
/// </summary>
public class tbbdManager : Repository<MesInvItemBarcodes>
{
    /// <summary>
    ///     èŽ·å–æ‰˜æ¿ç å·²ç»ç»‘å®šçš„ç›¸å…³åˆ—è¡¨
    /// </summary>
    /// <returns>托板码已经绑定的相关列表</returns>
    public dynamic GetBracodeDetails(TbBarcodeQuery query)
    {
        // ä½¿ç”¨ADO.NET直接调用存储过程
        var ds = new DataSet();
        // å‡è®¾æ‚¨ä½¿ç”¨çš„æ˜¯SQL Server,创建SqlConnection
        using (var conn = new SqlConnection(DbHelperSQL.strConn))
        {
            conn.Open();
            using (var cmd = new SqlCommand("prc_pda_tbbd_bralist", conn))
            {
                cmd.CommandType = CommandType.StoredProcedure;
                // æ·»åŠ å‚æ•°
                cmd.Parameters.Add(new SqlParameter("@tbBarcode", query.TbBarCode));
                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);
                }
            }
        }
        // è½¬æ¢ç»“æžœ
        var ItemDetail = Db.Utilities.DataTableToDynamic(ds.Tables[0]);
        return ItemDetail;
    }
    /// <summary>
    ///     æ‰«ææ¡ç è¿›è¡Œç»‘定托板码
    /// </summary>
    /// <param name="query">包含用户名和条码信息的查询参数</param>
    /// <returns>处理后的表单和待处理明细列表</returns>
    public dynamic ScanTBBD(TbBarcodeQuery query)
    {
        var _strMsg = "";
        var _intSum = "";
        var ds = new DataSet();
        using (var conn = new SqlConnection(DbHelperSQL.strConn))
        {
            if (string.IsNullOrEmpty(query.TbBarCode)) throw new Exception("托板码为空");
            using (var cmd = new SqlCommand("[prc_pda_tbbd_save]", conn))
            {
                try
                {
                    conn.Open();
                    cmd.CommandType = CommandType.StoredProcedure;
                    SqlParameter[] parameters =
                    {
                        new("@outMsg", SqlDbType.NVarChar, 300),
                        new("@outSum", SqlDbType.NVarChar, 300),
                        new("@tbBarcode", query.TbBarCode),
                        new("@itemBarcode", query.ItemBarcode),
                        new("@ACCOUNT", query.userName),
                        new("@inP1", DBNull.Value),
                        new("@inP2", DBNull.Value),
                        new("@inP3", DBNull.Value)
                };
                    parameters[0].Direction = ParameterDirection.Output;
                    parameters[1].Direction = ParameterDirection.Output;
                    foreach (var parameter in parameters)
                        cmd.Parameters.Add(parameter);
                    cmd.ExecuteNonQuery();
                    _strMsg = parameters[0].Value.ToString();
                    _intSum = parameters[1].Value.ToString();
                    var result = Convert.ToInt32(_intSum);
                    if (result <= 0) throw new Exception(_strMsg);
                    var dto = new
                    {
                        strMsg = _strMsg,
                        result = _intSum
                    };
                    return dto;
                }
                catch (Exception ex)
                {
                    throw new Exception(ex.Message);
                }
                finally
                {
                    conn.Close();
                }
            }
        }
    }
}
service/Warehouse/tbjbManager.cs
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,136 @@
using MES.Service.Modes;
using NewPdaSqlServer.DB;
using NewPdaSqlServer.Dto.service;
using NewPdaSqlServer.entity;
using NewPdaSqlServer.entity.Base;
using SqlSugar;
using System.Data;
using System.Data.SqlClient;
using static Microsoft.EntityFrameworkCore.DbLoggerCategory;
namespace NewPdaSqlServer.service.Warehouse;
/// <summary>
///     æ‰˜æ¿ç ç»‘定管理类
///     è´Ÿè´£å¤„理托板码解绑相关的业务逻辑
/// </summary>
public class tbjbManager : Repository<MesInvItemBarcodes>
{
    /// <summary>
    ///     èŽ·å–æ‰˜æ¿ç å·²ç»ç»‘å®šçš„ç›¸å…³åˆ—è¡¨
    /// </summary>
    /// <returns>托板码已经绑定的相关列表</returns>
    public dynamic GetBracodeDetails(TbBarcodeQuery query)
    {
        // ä½¿ç”¨ADO.NET直接调用存储过程
        var ds = new DataSet();
        // å‡è®¾æ‚¨ä½¿ç”¨çš„æ˜¯SQL Server,创建SqlConnection
        using (var conn = new SqlConnection(DbHelperSQL.strConn))
        {
            conn.Open();
            using (var cmd = new SqlCommand("prc_pda_tbjb_bralist", conn))
            {
                cmd.CommandType = CommandType.StoredProcedure;
                // æ·»åŠ å‚æ•°
                cmd.Parameters.Add(new SqlParameter("@tbBarcode", query.TbBarCode));
                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);
                }
            }
        }
        // è½¬æ¢ç»“æžœ
        var ItemDetail = Db.Utilities.DataTableToDynamic(ds.Tables[0]);
        return ItemDetail;
    }
    /// <summary>
    ///     æ‰«ææ¡ç è¿›è¡Œè§£ç»‘托板码
    /// </summary>
    /// <param name="query">包含用户名和条码信息的查询参数</param>
    /// <returns>处理后的表单和待处理明细列表</returns>
    public dynamic ScanTBJB(TbBarcodeQuery query)
    {
        var _strMsg = "";
        var _intSum = "";
        var ds = new DataSet();
        using (var conn = new SqlConnection(DbHelperSQL.strConn))
        {
            using (var cmd = new SqlCommand("[prc_pda_tbjb_save]", conn))
            {
                try
                {
                    conn.Open();
                    cmd.CommandType = CommandType.StoredProcedure;
                    SqlParameter[] parameters =
                    {
                        new("@outMsg", SqlDbType.NVarChar, 300),
                        new("@outSum", SqlDbType.NVarChar, 300),
                        new("@itemBarcode", query.ItemBarcode),
                        new("@ACCOUNT", query.userName),
                        new("@inP1", DBNull.Value),
                        new("@inP2", DBNull.Value),
                        new("@inP3", DBNull.Value)
                };
                    parameters[0].Direction = ParameterDirection.Output;
                    parameters[1].Direction = ParameterDirection.Output;
                    foreach (var parameter in parameters)
                        cmd.Parameters.Add(parameter);
                    cmd.ExecuteNonQuery();
                    _strMsg = parameters[0].Value.ToString();
                    _intSum = parameters[1].Value.ToString();
                    var result = Convert.ToInt32(_intSum);
                    if (result <= 0) throw new Exception(_strMsg);
                    var dto = new
                    {
                        strMsg = _strMsg,
                        result = _intSum
                    };
                    return dto;
                }
                catch (Exception ex)
                {
                    throw new Exception(ex.Message);
                }
                finally
                {
                    conn.Close();
                }
            }
        }
    }
}