hao
20 小时以前 5648a24be5fa8b8981c399c09a5d5a306bae1d5e
工单备料测试
已添加3个文件
已修改2个文件
204 ■■■■■ 文件已修改
StandardInterface/MES.Service/Dto/service/GDBLQRRequest.cs 26 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
StandardInterface/MES.Service/service/QC/GDBLQRService.cs 98 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
StandardInterface/MES.Service/service/WomcaaManager.cs 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
StandardInterface/MESApplication/Controllers/QC/GDBLQRController.cs 77 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
StandardInterface/MESApplication/appsettings.json 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
StandardInterface/MES.Service/Dto/service/GDBLQRRequest.cs
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,26 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace MES.Service.Dto.service
{
    public class GDBLQRConfirmRequest
    {
        public string MoNo { get; set; }
        public string User { get; set; }
    }
    public class MoRequest
    {
        public string MoNo { get; set; }
    }
    public class BarcodeScanRequest
    {
        public string MoNo { get; set; }
        public string Barcode { get; set; }
    }
}
StandardInterface/MES.Service/service/QC/GDBLQRService.cs
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,98 @@
using MES.Service.DB;
using MES.Service.Dto.service;
using MES.Service.util;
using SqlSugar;
using System.Data;
namespace MES.Service.service.QC;
public class GDBLQRService
{
    /// <summary>
    /// èŽ·å–å·¥å•å¤´ä¿¡æ¯å’Œå¤‡æ–™æ˜Žç»†åˆ—è¡¨ï¼ˆåŒæ¸¸æ ‡ï¼‰
    /// </summary>
    public (dynamic Header, List<dynamic> Details, string Msg) GetMoFullInfo(string moNo)
    {
        var db = SqlSugarHelper.GetInstance();
        var parameters = new List<SugarParameter>
    {
        new("pi_mo_no", moNo),
        new("po_header", null) { Direction = ParameterDirection.Output },
        new("po_details", null) { Direction = ParameterDirection.Output },
        new("po_msg", null)
        {
            Direction = ParameterDirection.Output,
            DbType = System.Data.DbType.String,
            Size = 200
        }
    };
        DataSet resultSets = db.Ado.UseStoredProcedure().GetDataSetAll("PRC_PREPARE_GET_MO_FULL_INFO", parameters);
        var msg = parameters.First(p => p.ParameterName == "po_msg").Value?.ToString() ?? "OK";
        if (msg != "OK")
            return (null, null, msg); // âŒ çŠ¶æ€å¼‚å¸¸ï¼Œä¸è¿”å›žä»»ä½•æ•°æ®
        var header = resultSets.Tables[0].ToDynamic().FirstOrDefault();
        var details = resultSets.Tables[1].ToDynamic();
        return (header, details, msg);
    }
    /// <summary>
    /// æ‰«ç æ›´æ–°ç‰©æ–™æ‰«ææ•°é‡
    /// </summary>
    public string ScanBarcode(string moNo, string barcode)
    {
        var db = SqlSugarHelper.GetInstance();
        var parameters = new List<SugarParameter>
        {
            new("pi_mo_no", moNo),
            new("pi_barcode", barcode),
            new("po_msg", null)
            {
                Direction = ParameterDirection.Output,
                DbType = System.Data.DbType.String, // âœ… æ˜¾å¼æŒ‡å®š System.Data.DbType é¿å…æ­§ä¹‰
                Size = 200
            }
        };
        db.Ado.UseStoredProcedure().ExecuteCommand("PRC_PREPARE_SCAN_BARCODE", parameters);
        return parameters.First(p => p.ParameterName == "po_msg").Value?.ToString() ?? "";
    }
    /// <summary>
    /// å·¥å•生产确认(打标确认人和时间)
    /// </summary>
    public void ConfirmPrepare(string moNo, string user)
    {
        var db = SqlSugarHelper.GetInstance();
        var parameters = new List<SugarParameter>
        {
            new("pi_mo_no", moNo),
            new("pi_user", user)
        };
        db.Ado.UseStoredProcedure().ExecuteCommand("PRC_PREPARE_PRODUCTION_CONFIRM", parameters);
    }
    /// <summary>
    /// å·¥å•品质复核确认(打标确认人和时间)
    /// </summary>
    public void ReviewPrepare(string moNo, string user)
    {
        var db = SqlSugarHelper.GetInstance();
        var parameters = new List<SugarParameter>
        {
            new("pi_mo_no", moNo),
            new("pi_user", user)
        };
        db.Ado.UseStoredProcedure().ExecuteCommand("PRC_PREPARE_QUALITY_REVIEW", parameters);
    }
}
StandardInterface/MES.Service/service/WomcaaManager.cs
@@ -294,6 +294,7 @@
              //  Db.Deleteable<Womcab>().Where(s => s.Erpid == womcab.Erpid).ExecuteCommand();
                womcab.Id = entity.Id;
            }
            womcabList.Add(womcab);
        }
StandardInterface/MESApplication/Controllers/QC/GDBLQRController.cs
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,77 @@
using Microsoft.AspNetCore.Mvc;
using MES.Service.Dto.service;
using MES.Service.service.QC;
using MES.Service.util;
namespace MESApplication.Controllers.QC;
[Route("api/[controller]")]
[ApiController]
public class GDBLQRController : ControllerBase
{
    private readonly GDBLQRService _service = new();
    [HttpPost("GetMoFullInfo")]
    public ResponseResult GetMoFullInfo([FromBody] MoRequest req)
    {
        try
        {
            var (header, details, msg) = _service.GetMoFullInfo(req.MoNo);
            if (msg != "OK")
                return new ResponseResult { status = -1, message = msg };
            return new ResponseResult
            {
                status = 0,
                message = "OK",
                data = new { header, details }
            };
        }
        catch (Exception ex)
        {
            return ResponseResult.ResponseError(ex);
        }
    }
    [HttpPost("ScanBarcode")]
    public ResponseResult ScanBarcode([FromBody] BarcodeScanRequest req)
    {
        try
        {
            var result = _service.ScanBarcode(req.MoNo, req.Barcode);
            return new ResponseResult { status = 0, message = result };
        }
        catch (Exception ex)
        {
            return ResponseResult.ResponseError(ex);
        }
    }
    [HttpPost("Confirm")]
    public ResponseResult Confirm([FromBody] GDBLQRConfirmRequest req)
    {
        try
        {
            _service.ConfirmPrepare(req.MoNo, req.User);
            return new ResponseResult { status = 0, message = "生产确认成功" };
        }
        catch (Exception ex)
        {
            return ResponseResult.ResponseError(ex);
        }
    }
    [HttpPost("Review")]
    public ResponseResult Review([FromBody] GDBLQRConfirmRequest req)
    {
        try
        {
            _service.ReviewPrepare(req.MoNo, req.User);
            return new ResponseResult { status = 0, message = "品质复核成功" };
        }
        catch (Exception ex)
        {
            return ResponseResult.ResponseError(ex);
        }
    }
}
StandardInterface/MESApplication/appsettings.json
@@ -10,6 +10,6 @@
  "AppSettings": {
    "TestErpUrl": "http://192.168.11.120:8098/WebService1.asmx/mesToErpinfo",
    "ProductionErpUrl": "http://192.168.11.120:8098/WebService1.asmx/mesToErpinfoFormal",
    "DataBaseConn": "Data Source = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.22)(PORT = 1521))(CONNECT_DATA = (SERVICE_NAME = ORCL))); Persist Security Info=True;User ID = test_dev; Password=hmprd"
    "DataBaseConn": "Data Source = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.22)(PORT = 1521))(CONNECT_DATA = (SERVICE_NAME = ORCL))); Persist Security Info=True;User ID = hm_prd; Password=hmprd"
  }
}