南骏 池
2025-03-26 17a83d6932d17686e65b563e339716cbcf7a5b4c
1.ipqc后台
2.新增样本已录入数
3.来料检优化
已添加3个文件
已修改4个文件
356 ■■■■■ 文件已修改
Controllers/QC/IpqcController.cs 68 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Controllers/Warehouse/MesXsckController.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
entity/MesQaItemsDetectDetail5.cs 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
entity/VIpqcSj.cs 160 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
service/QC/IpqcService.cs 113 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
service/QC/LljService.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
service/Warehouse/MesItemQtManager.cs 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Controllers/QC/IpqcController.cs
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,68 @@
using System.Dynamic;
using Microsoft.AspNetCore.Mvc;
using NewPdaSqlServer.Dto.service;
using NewPdaSqlServer.entity;
using NewPdaSqlServer.service.QC;
using NewPdaSqlServer.util;
using Newtonsoft.Json.Linq;
namespace NewPdaSqlServer.Controllers.QC;
[Route("api/[controller]")]
[ApiController]
public class IpqcController : ControllerBase
{
    IpqcService m = new IpqcService();
    [HttpPost("getPageSj")]
    public ResponseResult getPageSj([FromBody] XJPageResult queryObj)
    {
        try
        {
            dynamic resultInfos = new ExpandoObject();
            var (item, totalCount) = m.getPageSj(queryObj);
            var tbBillList =
                resultInfos.tbBillList = item;
            return new ResponseResult
            {
                status = 0,
                message = "OK",
                data = resultInfos,
                TotalCount = totalCount
            };
        }
        catch (Exception ex)
        {
            return ResponseResult.ResponseError(ex);
        }
    }
    //getItems
    [HttpPost("getJYItem")]
    public ResponseResult getJYItem([FromBody] JObject data)
    {
        var id = data["id"]?.ToString();
        var releaseNo = data["releaseNo"]?.ToString();
        try
        {
            dynamic resultInfos = new ExpandoObject();
            var tbBillList =
                m.GetItems(releaseNo,
                    id);
            resultInfos.tbBillList = tbBillList;
            return new ResponseResult
            {
                status = 0,
                message = "OK",
                data = resultInfos
            };
        }
        catch (Exception ex)
        {
            return ResponseResult.ResponseError(ex);
        }
    }
}
Controllers/Warehouse/MesXsckController.cs
@@ -217,7 +217,7 @@
        }
    }
    #region ç”Ÿäº§è¡¥æ–™
    #region é”€å”®å‡ºåº“
    /// <summary>
    ///     èŽ·å–ç”Ÿäº§è¡¥æ–™å•å·åˆ—è¡¨
entity/MesQaItemsDetectDetail5.cs
@@ -196,5 +196,11 @@
    [SugarColumn(ColumnName = "ybsl")]
    public int? Ybsl { get; set; }
    /// <summary>
    ///     æ ·æœ¬å·²å½•入数
    /// </summary>
    [SugarColumn(IsIgnore = true)]
    public int? YbslIn { get; set; }
    [SugarColumn(IsIgnore = true)] public int? Unqualified { get; set; }
}
entity/VIpqcSj.cs
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,160 @@
using SqlSugar;
namespace MES.Service.Models;
/// <summary>
///     IPQC首检视图实体类
/// </summary>
[SugarTable("V_IPQC_SJ")]
public class VIpqcSj
{
    /// <summary>
    ///     ä¸»é”®
    /// </summary>
    [SugarColumn(ColumnName = "guid")]
    public string Guid { get; set; }
    /// <summary>
    ///     æäº¤æ ‡è¯†
    /// </summary>
    [SugarColumn(ColumnName = "fsubmit")]
    public int? FSubmit { get; set; }
    /// <summary>
    ///     ä¿®æ”¹æ ‡å¿—
    /// </summary>
    [SugarColumn(ColumnName = "MODIFY1_FLAG")]
    public string Modify1Flag { get; set; }
    /// <summary>
    ///     æ‰¹æ¬¡å·  --到货单号
    /// </summary>
    [SugarColumn(ColumnName = "LOT_NO")]
    public string LotNo { get; set; }
    /// <summary>
    ///     ä¸è‰¯å¤„理方法
    /// </summary>
    [SugarColumn(ColumnName = "FNG_HANDLE")]
    public string FnGHandle { get; set; }
    /// <summary>
    ///     ç‰ˆæœ¬
    /// </summary>
    [SugarColumn(ColumnName = "FVERSION")]
    public string FVersion { get; set; }
    /// <summary>
    ///     å°æ‰¹æ¬¡å·,用作备注了
    /// </summary>
    [SugarColumn(ColumnName = "LOT_NO1")]
    public string LotNo1 { get; set; }
    /// <summary>
    ///     è½¬æ¢æ•°é‡
    /// </summary>
    [SugarColumn(ColumnName = "FCOVERT_QTY")]
    public string FCovertQty { get; set; }
    /// <summary>
    ///     æ£€éªŒç»“æžœ
    /// </summary>
    [SugarColumn(ColumnName = "FCHECK_RESU")]
    public string FCheckResu { get; set; }
    /// <summary>
    ///     æ£€éªŒå•号
    /// </summary>
    [SugarColumn(ColumnName = "RELEASE_NO")]
    public string ReleaseNo { get; set; }
    /// <summary>
    ///     å•号
    /// </summary>
    [SugarColumn(ColumnName = "DAA001")]
    public string Daa001 { get; set; }
    /// <summary>
    ///     æ¥æ–™æ•°é‡(检验数量)
    /// </summary>
    [SugarColumn(ColumnName = "FBATCH_QTY")]
    public string FBatchQty { get; set; }
    /// <summary>
    ///     ç‰©æ–™ç¼–码
    /// </summary>
    [SugarColumn(ColumnName = "ITEM_NO")]
    public string ItemNo { get; set; }
    /// <summary>
    ///     æ£€éªŒäººå‘˜
    /// </summary>
    [SugarColumn(ColumnName = "FCHECK_BY")]
    public string FCheckBy { get; set; }
    /// <summary>
    ///     ä¸è‰¯æè¿°
    /// </summary>
    [SugarColumn(ColumnName = "FNG_DESC")]
    public string FnGDesc { get; set; }
    /// <summary>
    ///     åˆ›å»ºäºº
    /// </summary>
    [SugarColumn(ColumnName = "CREATE_BY")]
    public string CreateBy { get; set; }
    /// <summary>
    ///     DAA013
    /// </summary>
    [SugarColumn(ColumnName = "DAA013")]
    public string Daa013 { get; set; }
    /// <summary>
    ///     sj_xt
    /// </summary>
    [SugarColumn(ColumnName = "sj_xt")]
    public string SjXt { get; set; }
    /// <summary>
    ///     éƒ¨é—¨åç§°
    /// </summary>
    [SugarColumn(ColumnName = "departmentname")]
    public string DepartmentName { get; set; }
    /// <summary>
    ///     åç§°
    /// </summary>
    [SugarColumn(ColumnName = "name")]
    public string XtName { get; set; }
    /// <summary>
    ///     é¡¹ç›®åç§°
    /// </summary>
    [SugarColumn(ColumnName = "ITEM_NAME")]
    public string ItemName { get; set; }
    /// <summary>
    ///     å¤‡æ³¨
    /// </summary>
    [SugarColumn(ColumnName = "remarks")]
    public string Remarks { get; set; }
    /// <summary>
    ///     æ£€æŸ¥æ—¥æœŸ
    /// </summary>
    [SugarColumn(ColumnName = "DATE_01")]
    public string Date01 { get; set; }
    /// <summary>
    ///     äº§å“åž‹å·
    /// </summary>
    [SugarColumn(ColumnName = "ITEM_MODEL")]
    public string ItemModel { get; set; }
    /// <summary>
    ///     åˆ›å»ºæ—¥æœŸ
    /// </summary>
    [SugarColumn(ColumnName = "CREATE_DATE")]
    public string CreateDate { get; set; }
}
service/QC/IpqcService.cs
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,113 @@
using MES.Service.Models;
using Microsoft.IdentityModel.Tokens;
using NewPdaSqlServer.DB;
using NewPdaSqlServer.Dto.service;
using NewPdaSqlServer.entity;
using NewPdaSqlServer.util;
using SqlSugar;
using static Azure.Core.HttpHeader;
namespace NewPdaSqlServer.service.QC;
public class IpqcService : RepositoryNoEntity
{
    public (List<VIpqcSj> item, int TotalCount) getPageSj(XJPageResult queryObj)
    {
        var parsedGuid = Guid.Empty;
        if (!queryObj.id.IsNullOrEmpty())
        {
            var isValid = Guid.TryParse(queryObj.id, out parsedGuid);
            if (!isValid)
                throw new ApplicationException("GUID转换错误");
        }
        var totalCount = 0;
        var pageList = Db.Queryable<VIpqcSj>()
            .WhereIF(!string.IsNullOrWhiteSpace(queryObj.keyword), a =>
                a.ItemNo.Contains(queryObj.keyword) ||
                a.ItemName.Contains(queryObj.keyword) ||
                a.Daa001.Contains(queryObj.keyword) ||
                a.ReleaseNo.Contains(queryObj.keyword) ||
                a.DepartmentName.Contains(queryObj.keyword )||
                a.XtName.Contains(queryObj.keyword)
            )
            .WhereIF(UtilityHelper.CheckGuid(parsedGuid),
                a => a.Guid == parsedGuid.ToString() )
            .Where(a => (a.FSubmit ?? 0) == 0)
            .OrderByDescending(a => a.CreateDate)
            .ToPageList(queryObj.PageIndex, queryObj.Limit, ref totalCount);
        return (pageList, totalCount);
    }
    public List<MesQaItemsDetectDetail5> GetItems(string? releaseNo,
        string? id)
    {
        var parsedGuid = Guid.Empty;
        if (id != null)
        {
            var isValid = Guid.TryParse(id, out parsedGuid);
            if (!isValid)
                throw new ApplicationException("GUID转换错误");
        }
        var Ybsl_In = Db.Queryable<MesQaItemsDetectDetail5>()
            .Where(a => a.ParentGuid == parsedGuid)
            .Count();
        return Db.Queryable<MesQaItemsDetectDetail5, MesQaItemsDetectDetail12>(
                (a, b) =>
                    new JoinQueryInfos(JoinType.Left, a.Guid == b.ParentGuid))
            .Where((a, b) => a.ReleaseNo == releaseNo)
            .WhereIF(UtilityHelper.CheckGuid(parsedGuid),
                (a, b) => a.Guid == parsedGuid)
            .GroupBy((a, b) => new
            {
                a.Guid,
                a.ParentGuid,
                a.ReleaseNo,
                a.FacLevel,
                a.FcheckItem,
                a.FcheckTool,
                a.FdownAllow,
                a.FcheckLevel,
                a.Fstand,
                a.FupAllow,
                a.SampleSizeNo,
                a.FspecRequ,
                a.FreQty,
                a.CheckQyt,
                a.FcheckResu,
                a.Order,
                a.Ybsl,
                a.YbslIn
            }).Select((a, b) => new MesQaItemsDetectDetail5
            {
                Guid = a.Guid,
                ParentGuid = a.ParentGuid,
                ReleaseNo = a.ReleaseNo,
                CheckQyt = a.CheckQyt,
                FacLevel = a.FacLevel,
                FcheckItem = a.FcheckItem,
                FcheckTool = a.FcheckTool,
                FdownAllow = a.FdownAllow,
                FcheckLevel = a.FcheckLevel,
                Fstand = a.Fstand,
                FupAllow = a.FupAllow,
                SampleSizeNo = a.SampleSizeNo,
                FspecRequ = a.FspecRequ,
                FreQty = a.FreQty,
                Factory = "1000",
                Company = "1000",
                FenterQty = SqlFunc.AggregateCount(b.Guid),
                FcheckResu = a.FcheckResu,
                Order = a.Order,
                Ybsl = a.Ybsl,
                YbslIn = Ybsl_In,
            }).OrderBy(a => a.Order)
            .ToList();
    }
}
service/QC/LljService.cs
@@ -730,7 +730,7 @@
    //删除特征值 
    public int deleteDetail13(LLJDto dto)
    {
        var withOracle = Db.Updateable<MesQaItemsDetectDetail13>()
        var withOracle = Db.Deleteable<MesQaItemsDetectDetail13>()
                .Where(s => s.Guid.ToString() == dto.id13)
                .ExecuteCommand();
service/Warehouse/MesItemQtManager.cs
@@ -270,7 +270,7 @@
            // æ£€æŸ¥æ˜¯å¦å·²å­˜åœ¨å‡ºåº“物料记录
            var existingOutItem = Db.Queryable<MesInvItemOutItems>()
                .Where(it =>
                    it.ItemOutId == outId && it.ItemId == barcode.ItemId)
                    it.ItemOutId == outId && it.ItemId == barcode.ItemId && it.AboutGuid == qtDetail.Guid)
                .First();
            if (existingOutItem == null)
@@ -297,7 +297,8 @@
                    ItemId = !string.IsNullOrEmpty(qtDetail.ItemId)
                        ? long.Parse(qtDetail.ItemId)
                        : null,
                    FType = 0
                    FType = 0,
                    AboutGuid = qtDetail.Guid
                    // Unit = qtDetail.Qd009
                };