啊鑫
2025-02-19 35558fe5ed20893bb9595e9688e3e6db67f2f76d
iqc来料检验
已添加11个文件
已修改8个文件
2593 ■■■■ 文件已修改
StandardPda/MES.Service/Dto/service/LLJDto.cs 36 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
StandardPda/MES.Service/Modes/IqcBefore.cs 27 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
StandardPda/MES.Service/Modes/IqcBeforeFrom.cs 53 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
StandardPda/MES.Service/Modes/LtsLlj.cs 172 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
StandardPda/MES.Service/Modes/MesQaIqc.cs 85 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
StandardPda/MES.Service/Modes/MesQaItemsDetect01.cs 705 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
StandardPda/MES.Service/Modes/MesQaItemsDetectDetail12.cs 88 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
StandardPda/MES.Service/Modes/MesQaItemsDetectDetail5.cs 298 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
StandardPda/MES.Service/Modes/MesRohIn.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
StandardPda/MES.Service/Modes/SysUser.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
StandardPda/MES.Service/service/BasicData/MesRohInManager.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
StandardPda/MES.Service/service/BasicData/MesStaffManager.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
StandardPda/MES.Service/service/LoginService.cs 88 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
StandardPda/MES.Service/service/QC/LljService.cs 628 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
StandardPda/MES.Service/util/ResponseResult.cs 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
StandardPda/MES.Service/util/UserUtil.cs 17 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
StandardPda/MESApplication/Controllers/Base/LoginController.cs 108 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
StandardPda/MESApplication/Controllers/QC/LljController.cs 276 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
StandardPda/MESApplication/appsettings.json 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
StandardPda/MES.Service/Dto/service/LLJDto.cs
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,36 @@
using MES.Service.Modes;
namespace MES.Service.Dto.service;
public class LLJDto
{
    public string? userNo { get; set; }
    //检验单号
    public string? releaseNo { get; set; }
    //主表id
    public int? gid { get; set; }
    //子表id
    public int? pid { get; set; }
    //孙表id
    public int? id { get; set; }
    //备注
    public string? Remarks { get; set; }
    //==========================================
    //巡检主子表需要的数据
    public QsItemOqcReq? from { get; set; }
    public List<MesQaItemsDetectDetail5>? items { get; set; }
    //==========================================
    //巡检子孙表需要的数据
    public MesQaItemsDetectDetail5? ItemXj01 { get; set; }
    public List<MesQaItemsDetectDetail12>? ItemXj02s { get; set; }
}
StandardPda/MES.Service/Modes/IqcBefore.cs
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,27 @@

using SqlSugar;
namespace MES.Service.Modes
{
    /// <summary>
    /// ç”¨æˆ·å¯¹åº”的物料检验表
    ///</summary>
    [SugarTable("IQC_BEFORE")]
    public class IqcBefore
    {
        /// <summary>
        /// SEQ_IQC_Before
        ///</summary>
         [SugarColumn(ColumnName="ID" ,IsPrimaryKey = true   )]
         public decimal Id { get; set; }
        /// <summary>
        /// ç”¨æˆ·id
        ///</summary>
         [SugarColumn(ColumnName="SID"    )]
         public decimal Sid { get; set; }
        /// <summary>
        /// ç‰©æ–™id
        ///</summary>
         [SugarColumn(ColumnName="ITEM_ID"    )]
         public decimal ItemId { get; set; }
    }
}
StandardPda/MES.Service/Modes/IqcBeforeFrom.cs
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,53 @@
using SqlSugar;
namespace MES.Service.Modes
{
    /// <summary>
    /// ç”¨æˆ·å¯¹åº”的物料检验主表
    ///</summary>
    [SugarTable("IQC_BEFORE_FROM")]
    public class IqcBeforeFrom
    {
        /// <summary>
        /// SEQ_IQC_Before
        ///</summary>
        [SugarColumn(ColumnName = "ID", IsPrimaryKey = true)]
        public decimal Id { get; set; }
        /// <summary>
        /// ç”¨æˆ·id
        ///</summary>
        [SugarColumn(ColumnName = "SID")]
        public decimal? Sid { get; set; }
        /// <summary>
        /// ç”¨æˆ·å
        ///</summary>
        [SugarColumn(ColumnName = "USER_NAME")]
        public string? UserName { get; set; }
        /// <summary>
        /// ç»„织id
        ///</summary>
        [SugarColumn(ColumnName = "ORGANIZE_ID")]
        public string? OrganizeId { get; set; }
        /// <summary>
        /// å®¡æ ¸äºº
        ///</summary>
        [SugarColumn(ColumnName = "CHECK_USER")]
        public string? CheckUser { get; set; }
        /// <summary>
        /// å®¡æ ¸æ—¶é—´
        ///</summary>
        [SugarColumn(ColumnName = "CHECK_DATE")]
        public DateTime? CheckDate { get; set; }
        /// <summary>
        /// å®¡æ ¸çŠ¶æ€(默认值:0)
        ///</summary>
        [SugarColumn(ColumnName = "STATUS")]
        public short? Status { get; set; }
    }
}
StandardPda/MES.Service/Modes/LtsLlj.cs
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,172 @@
using SqlSugar;
namespace MES.Service.Modes;
/// <summary>
///     æ•°æ®æºå¯¼å…¥
/// </summary>
[SugarTable("V_LLJ")]
public class LtsLlj
{
    /// <summary>
    /// </summary>
    [SugarColumn(ColumnName = "Id")]
    public decimal? Id { get; set; }
    /// <summary>
    ///     å®¡æ ¸æ ‡è¯†
    /// </summary>
    [SugarColumn(ColumnName = "MODIFY1_FLAG")]
    public decimal? 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 decimal? 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 = "SUPP_NO")]
    public string? SuppNo { get; set; }
    /// <summary>
    ///     æ£€éªŒå•号
    /// </summary>
    [SugarColumn(ColumnName = "RELEASE_NO")]
    public string? ReleaseNo { get; set; }
    /// <summary>
    ///     é‡‡è´­æ•°é‡
    /// </summary>
    [SugarColumn(ColumnName = "FBATCH_QTY")]
    public string? FbatchQty { get; set; }
    /// <summary>
    ///     ç‰©æ–™ç¼–码
    /// </summary>
    [SugarColumn(ColumnName = "ITEM_NO")]
    public string? ItemNo { get; set; }
    [SugarColumn(ColumnName = "ITEM_ID")] public decimal ItemId { 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>
    ///     åˆ›å»ºæ—¶é—´
    /// </summary>
    [SugarColumn(ColumnName = "CREATE_DATE")]
    public DateTime? CreateDate { get; set; }
    [SugarColumn(ColumnName = "USER_NO")] public string? UserNo { get; set; }
    [SugarColumn(ColumnName = "MODIFY1_BY")]
    public string? Modify1By { get; set; }
    [SugarColumn(ColumnName = "MODIFY1_DATE")]
    public DateTime? Modify1Date { get; set; }
    [SugarColumn(ColumnName = "IQC_DATE")]
    public DateTime? IqcDate { get; set; }
    /// <summary>
    ///     æ˜¯å¦æ€¥æ–™
    /// </summary>
    [SugarColumn(ColumnName = "URGENT_FLAG")]
    public short? UrgentFlag { get; set; }
    /// <summary>
    ///     ç‰©æ–™åç§°
    /// </summary>
    [SugarColumn(ColumnName = "ITEM_NAME")]
    public string? ItemName { get; set; }
    /// <summary>
    ///     æ£€éªŒç±»åž‹
    /// </summary>
    [SugarColumn(ColumnName = "QATYPE")]
    public string? Qatype { get; set; }
    /// <summary>
    ///     æ£€éªŒæ—¥æœŸ
    /// </summary>
    [SugarColumn(ColumnName = "DATE_01")]
    public string? Date01 { get; set; }
    /// <summary>
    ///     ä¾›åº”商名称
    /// </summary>
    [SugarColumn(ColumnName = "SUPP_NAME")]
    public string? SuppName { get; set; }
    /// <summary>
    ///     ç‰©æ–™è§„æ ¼
    /// </summary>
    [SugarColumn(ColumnName = "ITEM_MODEL")]
    public string? ItemModel { get; set; }
    /// <summary>
    ///     åº“存数量
    /// </summary>
    [SugarColumn(ColumnName = "KC_QTY")]
    public decimal? KcQty { get; set; }
    /// <summary>
    ///     å•据状态
    /// </summary>
    [SugarColumn(ColumnName = "STATUS")]
    public string? Status { get; set; }
    /// <summary>
    ///     å§”外标识(0:采购 ã€1:委外)
    /// </summary>
    [SugarColumn(ColumnName = "F_TYPE")]
    public int Ftype { get; set; }
}
StandardPda/MES.Service/Modes/MesQaIqc.cs
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,85 @@
using SqlSugar;
namespace MES.Service.Modes;
/// <summary>
///     æ•°æ®æºå¯¼å…¥
/// </summary>
[SugarTable("Mes_Qa_Iqc")]
public class MesQaIqc
{
    /// <summary>
    ///     æŽ¥æ”¶æ°´å¹³
    /// </summary>
    [SugarColumn(ColumnName = "ITEM_NO")]
    public string ItemNo { get; set; }
    /// <summary>
    ///     æŽ¥æ”¶æ°´å¹³
    /// </summary>
    [SugarColumn(ColumnName = "FAC_LEVEL")]
    public string FacLevel { get; set; }
    /// <summary>
    ///     æ£€éªŒé¡¹ç›®
    /// </summary>
    [SugarColumn(ColumnName = "FCHECK_ITEM")]
    public string FcheckItem { get; set; }
    /// <summary>
    ///     æ£€éªŒå·¥å…·
    /// </summary>
    [SugarColumn(ColumnName = "FCHECK_TOOL")]
    public string FcheckTool { get; set; }
    /// <summary>
    ///     ä¸‹é™
    /// </summary>
    [SugarColumn(ColumnName = "FDOWN_ALLOW")]
    public string FdownAllow { get; set; }
    /// <summary>
    ///     æ£€éªŒæ°´å¹³
    /// </summary>
    [SugarColumn(ColumnName = "FREQUENCY")]
    public string FREQUENCY { get; set; }
    /// <summary>
    ///     æ ‡å‡†
    /// </summary>
    [SugarColumn(ColumnName = "FSTAND")]
    public decimal? FSTAND { get; set; }
    /// <summary>
    ///     ä¸Šé™
    /// </summary>
    [SugarColumn(ColumnName = "FUP_ALLOW")]
    public string FupAllow { get; set; }
    /// <summary>
    ///     æ£€éªŒæ°´å‡†ç¼–码
    /// </summary>
    [SugarColumn(ColumnName = "SAMPLE_SIZE_NO")]
    public string SampleSizeNo { get; set; }
    /// <summary>
    ///     è§„格要求
    /// </summary>
    [SugarColumn(ColumnName = "FSPEC_REQU")]
    public string FspecRequ { get; set; }
    /// <summary>
    /// </summary>
    [SugarColumn(ColumnName = "ISENABLED")]
    public short? ISENABLED { get; set; }
    /// <summary>
    /// </summary>
    [SugarColumn(ColumnName = "EE")]
    public short? EE { get; set; }
    /// <summary>
    /// </summary>
    [SugarColumn(ColumnName = "FTYPE")]
    public string FTYPE { get; set; }
}
StandardPda/MES.Service/Modes/MesQaItemsDetect01.cs
@@ -1,331 +1,488 @@
using SqlSugar;
using System;
using System.Collections.Generic;
using System.Linq;
using SqlSugar;
namespace MES.Service.Modes;
/// <summary>
///     æ¥æ–™å…¥åº“检验表头
/// </summary>
[SugarTable("MES_QA_ITEMS_DETECT_01")]
public class MesQaItemsDetect01
namespace MES.Service.Modes
{
 /// <summary>
 /// </summary>
 [SugarColumn(ColumnName = "ID", IsPrimaryKey = true)]
    public decimal Id { get; set; }
    /// <summary>
    /// æ¥æ–™å…¥åº“检验表头
    ///</summary>
    [SugarTable("MES_QA_ITEMS_DETECT_01")]
    public class MesQaItemsDetect01
    {
        /// <summary>
        ///
        ///</summary>
        [SugarColumn(ColumnName = "ID", IsPrimaryKey = true)]
        public decimal Id { get; set; }
 /// <summary>
 ///     æ£€éªŒå•号
 /// </summary>
 [SugarColumn(ColumnName = "RELEASE_NO")]
    public string ReleaseNo { get; set; }
        /// <summary>
        /// æ£€éªŒå•号
        ///</summary>
        [SugarColumn(ColumnName = "RELEASE_NO")]
        public string ReleaseNo { get; set; }
 /// <summary>
 ///     æ£€éªŒæ—¥æœŸ
 /// </summary>
 [SugarColumn(ColumnName = "FCHECK_DATE")]
    public DateTime? FcheckDate { get; set; }
        /// <summary>
        /// æ£€éªŒæ—¥æœŸ
        ///</summary>
        [SugarColumn(ColumnName = "FCHECK_DATE")]
        public DateTime? FcheckDate { get; set; }
 /// <summary>
 ///     æ£€éªŒäººå‘˜
 /// </summary>
 [SugarColumn(ColumnName = "FCHECK_BY")]
    public string FcheckBy { get; set; }
        /// <summary>
        /// æ£€éªŒäººå‘˜
        ///</summary>
        [SugarColumn(ColumnName = "FCHECK_BY")]
        public string FcheckBy { get; set; }
 /// <summary>
 ///     ç‰©æ–™ç¼–码
 /// </summary>
 [SugarColumn(ColumnName = "ITEM_NO")]
    public string ItemNo { get; set; }
        /// <summary>
        /// ç‰©æ–™ç¼–码
        ///</summary>
        [SugarColumn(ColumnName = "ITEM_NO")]
        public string ItemNo { get; set; }
 /// <summary>
 ///     æ¥æ–™æ•°é‡
 /// </summary>
 [SugarColumn(ColumnName = "FBATCH_QTY")]
    public decimal? FbatchQty { get; set; }
        /// <summary>
        /// æ¥æ–™æ•°é‡
        ///</summary>
        [SugarColumn(ColumnName = "FBATCH_QTY")]
        public decimal? FbatchQty { get; set; }
 /// <summary>
 ///     åˆ¤å®šç»“æžœ
 /// </summary>
 [SugarColumn(ColumnName = "FRECE_QTY")]
    public string FreceQty { get; set; }
        /// <summary>
        /// æŽ¥æ”¶æ•°é‡
        ///</summary>
        [SugarColumn(ColumnName = "FRECE_QTY")]
        public string FreceQty { get; set; }
 /// <summary>
 /// </summary>
 [SugarColumn(ColumnName = "SUPP_NO")]
    public string SuppNo { get; set; }
        /// <summary>
        /// ä¾›åº”商编号
        ///</summary>
        [SugarColumn(ColumnName = "SUPP_NO")]
        public string SuppNo { get; set; }
 /// <summary>
 /// </summary>
 [SugarColumn(ColumnName = "FNG_DESC")]
    public string FngDesc { get; set; }
        /// <summary>
        /// å¤‡æ³¨
        ///</summary>
        [SugarColumn(ColumnName = "FNG_DESC")]
        public string FngDesc { get; set; }
 /// <summary>
 ///     æ£€éªŒç»“æžœ
 /// </summary>
 [SugarColumn(ColumnName = "FCHECK_RESU")]
    public string FcheckResu { get; set; }
        /// <summary>
        /// æ£€éªŒç»“æžœ
        ///</summary>
        [SugarColumn(ColumnName = "FCHECK_RESU")]
        public string FcheckResu { get; set; }
 /// <summary>
 /// </summary>
 [SugarColumn(ColumnName = "FREVIEW")]
    public string Freview { get; set; }
        /// <summary>
        /// OA评审反馈
        ///</summary>
        [SugarColumn(ColumnName = "FREVIEW")]
        public string Freview { get; set; }
 /// <summary>
 ///     æ£€éªŒæ°´å‡†
 /// </summary>
 [SugarColumn(ColumnName = "SAMPLE_SIZE_NO")]
    public string SampleSizeNo { get; set; }
        /// <summary>
        /// æ£€éªŒæ°´å‡†
        ///</summary>
        [SugarColumn(ColumnName = "SAMPLE_SIZE_NO")]
        public string SampleSizeNo { get; set; }
 /// <summary>
 ///     æ£€éªŒæ°´å¹³
 /// </summary>
 [SugarColumn(ColumnName = "FCHECK_LEVEL")]
    public string FcheckLevel { get; set; }
        /// <summary>
        /// æ£€éªŒæ°´å¹³
        ///</summary>
        [SugarColumn(ColumnName = "FCHECK_LEVEL")]
        public string FcheckLevel { get; set; }
 /// <summary>
 ///     æ‹’æ”¶æ°´å¹³
 /// </summary>
 [SugarColumn(ColumnName = "FAC_LEVEL")]
    public string FacLevel { get; set; }
        /// <summary>
        /// æ‹’æ”¶æ°´å¹³
        ///</summary>
        [SugarColumn(ColumnName = "FAC_LEVEL")]
        public string FacLevel { get; set; }
 /// <summary>
 ///     æŠ½æ£€æ•°é‡
 /// </summary>
 [SugarColumn(ColumnName = "CHECK_QTY")]
    public string CheckQty { get; set; }
        /// <summary>
        /// æŠ½æ£€æ•°é‡
        ///</summary>
        [SugarColumn(ColumnName = "CHECK_QTY")]
        public string CheckQty { get; set; }
 /// <summary>
 ///     æ‰¹æ¬¡å·  --到货单号
 /// </summary>
 [SugarColumn(ColumnName = "LOT_NO")]
    public string LotNo { get; set; }
        /// <summary>
        /// æ‰¹æ¬¡å·  --到货单号
        ///</summary>
        [SugarColumn(ColumnName = "LOT_NO")]
        public string LotNo { get; set; }
 /// <summary>
 ///     æ˜¯å¦æŽ¨é€
 /// </summary>
 [SugarColumn(ColumnName = "FMOVE")]
    public string Fmove { get; set; }
        /// <summary>
        /// æ˜¯å¦æŽ¨é€
        ///</summary>
        [SugarColumn(ColumnName = "FMOVE")]
        public string Fmove { get; set; }
 /// <summary>
 ///     æ˜¯å¦å¤„理
 /// </summary>
 [SugarColumn(ColumnName = "FHANDLE")]
    public string Fhandle { get; set; }
        /// <summary>
        /// æ˜¯å¦å¤„理
        ///</summary>
        [SugarColumn(ColumnName = "FHANDLE")]
        public string Fhandle { get; set; }
 /// <summary>
 ///     åˆ›å»ºäºº
 /// </summary>
 [SugarColumn(ColumnName = "CREATE_BY")]
    public string CreateBy { get; set; }
        /// <summary>
        /// åˆ›å»ºäºº
        ///</summary>
        [SugarColumn(ColumnName = "CREATE_BY")]
        public string CreateBy { get; set; }
 /// <summary>
 ///     åˆ›å»ºæ—¥æœŸ
 /// </summary>
 [SugarColumn(ColumnName = "CREATE_DATE")]
    public DateTime? CreateDate { get; set; }
        /// <summary>
        /// åˆ›å»ºæ—¥æœŸ
        ///</summary>
        [SugarColumn(ColumnName = "CREATE_DATE")]
        public DateTime? CreateDate { get; set; }
 /// <summary>
 ///     æ›´æ–°äºº
 /// </summary>
 [SugarColumn(ColumnName = "LASTUPDATE_BY")]
    public string LastupdateBy { get; set; }
        /// <summary>
        /// æ›´æ–°äºº
        ///</summary>
        [SugarColumn(ColumnName = "LASTUPDATE_BY")]
        public string LastupdateBy { get; set; }
 /// <summary>
 ///     æ›´æ–°æ—¥æœŸ
 /// </summary>
 [SugarColumn(ColumnName = "LASTUPDATE_DATE")]
    public DateTime? LastupdateDate { get; set; }
        /// <summary>
        /// æ›´æ–°æ—¥æœŸ
        ///</summary>
        [SugarColumn(ColumnName = "LASTUPDATE_DATE")]
        public DateTime? LastupdateDate { get; set; }
 /// <summary>
 ///     æ˜¯å¦å®¡æ ¸
 /// </summary>
 [SugarColumn(ColumnName = "MODIFY1_FLAG")]
    public decimal? Modify1Flag { get; set; }
        /// <summary>
        /// æ˜¯å¦å®¡æ ¸
        ///</summary>
        [SugarColumn(ColumnName = "MODIFY1_FLAG")]
        public decimal? Modify1Flag { get; set; }
 /// <summary>
 /// </summary>
 [SugarColumn(ColumnName = "MODIFY1_BY")]
    public string Modify1By { get; set; }
        /// <summary>
        /// å®¡æ ¸äºº
        ///</summary>
        [SugarColumn(ColumnName = "MODIFY1_BY")]
        public string Modify1By { get; set; }
 /// <summary>
 /// </summary>
 [SugarColumn(ColumnName = "MODIFY1_DATE")]
    public DateTime? Modify1Date { get; set; }
        /// <summary>
        /// å®¡æ ¸æ—¥æœŸ
        ///</summary>
        [SugarColumn(ColumnName = "MODIFY1_DATE")]
        public DateTime? Modify1Date { get; set; }
 /// <summary>
 /// </summary>
 [SugarColumn(ColumnName = "FACTORY")]
    public string Factory { get; set; }
        /// <summary>
        ///
        ///</summary>
        [SugarColumn(ColumnName = "FACTORY")]
        public string Factory { get; set; }
 /// <summary>
 ///     XRF测试报告编号
 /// </summary>
 [SugarColumn(ColumnName = "FCHECK_REPNO")]
    public string FcheckRepno { get; set; }
        /// <summary>
        /// XRF测试报告编号
        ///</summary>
        [SugarColumn(ColumnName = "FCHECK_REPNO")]
        public string FcheckRepno { get; set; }
 /// <summary>
 ///     ç¬¬ä¸‰æ–¹æŠ¥å‘Š
 /// </summary>
 [SugarColumn(ColumnName = "FTHIRD_REP")]
    public string FthirdRep { get; set; }
        /// <summary>
        /// ç¬¬ä¸‰æ–¹æŠ¥å‘Š
        ///</summary>
        [SugarColumn(ColumnName = "FTHIRD_REP")]
        public string FthirdRep { get; set; }
 /// <summary>
 ///     æ˜¯å¦ä½œåºŸ
 /// </summary>
 [SugarColumn(ColumnName = "FCANCEL")]
    public decimal? Fcancel { get; set; }
        /// <summary>
        /// æ˜¯å¦ä½œåºŸ
        ///</summary>
        [SugarColumn(ColumnName = "FCANCEL")]
        public decimal? Fcancel { get; set; }
 /// <summary>
 ///     æäº¤æ ‡è¯†
 /// </summary>
 [SugarColumn(ColumnName = "FSUBMIT")]
    public decimal? Fsubmit { get; set; }
        /// <summary>
        /// æäº¤æ ‡è¯†
        ///</summary>
        [SugarColumn(ColumnName = "FSUBMIT")]
        public decimal? Fsubmit { get; set; }
 /// <summary>
 ///     æ£€éªŒä¾æ®
 /// </summary>
 [SugarColumn(ColumnName = "FCHECK_ACCORD")]
    public string FcheckAccord { get; set; }
        /// <summary>
        /// æ£€éªŒä¾æ®
        ///</summary>
        [SugarColumn(ColumnName = "FCHECK_ACCORD")]
        public string FcheckAccord { get; set; }
 /// <summary>
 ///     ç±»åž‹(0 æ¥æ–™ 1 åœ¨åº“)
 /// </summary>
 [SugarColumn(ColumnName = "FTYPE")]
    public short? Ftype { get; set; }
        /// <summary>
        /// ç±»åž‹(0 æ¥æ–™ 1 åœ¨åº“)
        ///</summary>
        [SugarColumn(ColumnName = "FTYPE")]
        public short? Ftype { get; set; }
 /// <summary>
 ///     å•位
 /// </summary>
 [SugarColumn(ColumnName = "ITEM_UNIT")]
    public string ItemUnit { get; set; }
        /// <summary>
        /// å•位
        ///</summary>
        [SugarColumn(ColumnName = "ITEM_UNIT")]
        public string ItemUnit { get; set; }
 /// <summary>
 ///     å‡ºè´§æ—¥æœŸ
 /// </summary>
 [SugarColumn(ColumnName = "OUT_DATE")]
    public string OutDate { get; set; }
        /// <summary>
        /// å‡ºè´§æ—¥æœŸ
        ///</summary>
        [SugarColumn(ColumnName = "OUT_DATE")]
        public string OutDate { get; set; }
 /// <summary>
 ///     æ˜¯å¦å…æ£€
 /// </summary>
 [SugarColumn(ColumnName = "FEXEMPTION")]
    public decimal? Fexemption { get; set; }
        /// <summary>
        /// æ˜¯å¦å…æ£€
        ///</summary>
        [SugarColumn(ColumnName = "FEXEMPTION")]
        public decimal? Fexemption { get; set; }
 /// <summary>
 ///     æ¡£ä½æ ‡å‡†
 /// </summary>
 [SugarColumn(ColumnName = "FGEAR_STAND")]
    public string FgearStand { get; set; }
        /// <summary>
        /// æ¡£ä½æ ‡å‡†
        ///</summary>
        [SugarColumn(ColumnName = "FGEAR_STAND")]
        public string FgearStand { get; set; }
 /// <summary>
 ///     ä¸è‰¯å¤„理方法
 /// </summary>
 [SugarColumn(ColumnName = "FNG_HANDLE")]
    public string FngHandle { get; set; }
        /// <summary>
        /// ä¸è‰¯æœ€ç»ˆå¤„理方式
        ///</summary>
        [SugarColumn(ColumnName = "FNG_HANDLE")]
        public string FngHandle { get; set; }
 /// <summary>
 ///     ç®¡ç†ç¼–号
 /// </summary>
 [SugarColumn(ColumnName = "FMANAGE_NO")]
    public string FmanageNo { get; set; }
        /// <summary>
        /// ç®¡ç†ç¼–号
        ///</summary>
        [SugarColumn(ColumnName = "FMANAGE_NO")]
        public string FmanageNo { get; set; }
 /// <summary>
 ///     è½¬æ¢æ•°é‡
 /// </summary>
 [SugarColumn(ColumnName = "FCOVERT_QTY")]
    public string FcovertQty { get; set; }
        /// <summary>
        /// è½¬æ¢æ•°é‡
        ///</summary>
        [SugarColumn(ColumnName = "FCOVERT_QTY")]
        public string FcovertQty { get; set; }
 /// <summary>
 ///     ç‰ˆæœ¬
 /// </summary>
 [SugarColumn(ColumnName = "FVERSION")]
    public decimal? Fversion { get; set; }
        /// <summary>
        /// ç‰ˆæœ¬
        ///</summary>
        [SugarColumn(ColumnName = "FVERSION")]
        public decimal? Fversion { get; set; }
 /// <summary>
 /// </summary>
 [SugarColumn(ColumnName = "COMPANY")]
    public string Company { get; set; }
        /// <summary>
        ///
        ///</summary>
        [SugarColumn(ColumnName = "COMPANY")]
        public string Company { get; set; }
 /// <summary>
 /// </summary>
 [SugarColumn(ColumnName = "FSECOND_RESU")]
    public string FsecondResu { get; set; }
        /// <summary>
        ///
        ///</summary>
        [SugarColumn(ColumnName = "FSECOND_RESU")]
        public string FsecondResu { get; set; }
 /// <summary>
 ///     æœ€å¤§æŠ½æ£€æ•°
 /// </summary>
 [SugarColumn(ColumnName = "MAX_CHECK_QTY")]
    public decimal? MaxCheckQty { get; set; }
        /// <summary>
        /// æœ€å¤§æŠ½æ£€æ•°
        ///</summary>
        [SugarColumn(ColumnName = "MAX_CHECK_QTY")]
        public decimal? MaxCheckQty { get; set; }
 /// <summary>
 ///     ç‰¹å®šä¿®æ”¹æ˜¯å¦å®¡æ ¸
 /// </summary>
 [SugarColumn(ColumnName = "MODIFY1_FLAG1")]
    public decimal? Modify1Flag1 { get; set; }
        /// <summary>
        /// ç‰¹å®šä¿®æ”¹æ˜¯å¦å®¡æ ¸
        ///</summary>
        [SugarColumn(ColumnName = "MODIFY1_FLAG1")]
        public decimal? Modify1Flag1 { get; set; }
 /// <summary>
 ///     ç‰¹å®šä¿®æ”¹å®¡æ ¸äºº
 /// </summary>
 [SugarColumn(ColumnName = "MODIFY1_BY1")]
    public string Modify1By1 { get; set; }
        /// <summary>
        /// ç‰¹å®šä¿®æ”¹å®¡æ ¸äºº
        ///</summary>
        [SugarColumn(ColumnName = "MODIFY1_BY1")]
        public string Modify1By1 { get; set; }
 /// <summary>
 ///     ç‰¹å®šä¿®æ”¹å®¡æ ¸æ—¶é—´
 /// </summary>
 [SugarColumn(ColumnName = "MODIFY1_DATE1")]
    public DateTime? Modify1Date1 { get; set; }
        /// <summary>
        /// ç‰¹å®šä¿®æ”¹å®¡æ ¸æ—¶é—´
        ///</summary>
        [SugarColumn(ColumnName = "MODIFY1_DATE1")]
        public DateTime? Modify1Date1 { get; set; }
 /// <summary>
 ///     å°æ‰¹æ¬¡å·
 /// </summary>
 [SugarColumn(ColumnName = "LOT_NO1")]
    public string LotNo1 { get; set; }
        /// <summary>
        /// å°æ‰¹æ¬¡å·
        ///</summary>
        [SugarColumn(ColumnName = "LOT_NO1")]
        public string LotNo1 { get; set; }
 /// <summary>
 ///     é‡‡è´­å•号
 /// </summary>
 [SugarColumn(ColumnName = "LOT_NO2")]
    public string LotNo2 { get; set; }
        /// <summary>
        /// é‡‡è´­å•号
        ///</summary>
        [SugarColumn(ColumnName = "LOT_NO2")]
        public string LotNo2 { get; set; }
 /// <summary>
 ///     äº§å“åž‹å·
 /// </summary>
 [SugarColumn(ColumnName = "BOARD_STYLE")]
    public string BoardStyle { get; set; }
        /// <summary>
        /// äº§å“åž‹å·
        ///</summary>
        [SugarColumn(ColumnName = "BOARD_STYLE")]
        public string BoardStyle { get; set; }
 /// <summary>
 ///     ä»»åŠ¡å•å·
 /// </summary>
 [SugarColumn(ColumnName = "WORK_NO")]
    public string WorkNo { get; set; }
        /// <summary>
        /// ä»»åŠ¡å•å·
        ///</summary>
        [SugarColumn(ColumnName = "WORK_NO")]
        public string WorkNo { get; set; }
 /// <summary>
 ///     åˆ°è´§æ—¶é—´
 /// </summary>
 [SugarColumn(ColumnName = "DHA018")]
    public string Dha018 { get; set; }
        /// <summary>
        /// åˆ°è´§æ—¶é—´
        ///</summary>
        [SugarColumn(ColumnName = "DHA018")]
        public string Dha018 { get; set; }
 /// <summary>
 ///     è¡Œå·
 /// </summary>
 [SugarColumn(ColumnName = "DHB002")]
    public decimal? Dhb002 { get; set; }
        /// <summary>
        /// è¡Œå·
        ///</summary>
        [SugarColumn(ColumnName = "DHB002")]
        public decimal? Dhb002 { get; set; }
 /// <summary>
 ///     åˆ°è´§å•号
 /// </summary>
 [SugarColumn(ColumnName = "DHB001")]
    public string Dhb001 { get; set; }
        /// <summary>
        /// åˆ°è´§å•号
        ///</summary>
        [SugarColumn(ColumnName = "DHB001")]
        public string Dhb001 { get; set; }
 /// <summary>
 ///     ä¾›åº”商
 /// </summary>
 [SugarColumn(ColumnName = "LIFNR")]
    public string Lifnr { get; set; }
        /// <summary>
        /// ä¾›åº”商
        ///</summary>
        [SugarColumn(ColumnName = "LIFNR")]
        public string Lifnr { get; set; }
 /// <summary>
 ///     é€€æ–™æ–¹å¼
 /// </summary>
 [SugarColumn(ColumnName = "FMRMODE")]
    public string Fmrmode { get; set; }
        /// <summary>
        /// é€€æ–™æ–¹å¼
        ///</summary>
        [SugarColumn(ColumnName = "FMRMODE")]
        public string Fmrmode { get; set; }
        /// <summary>
        /// erp返回信息
        ///</summary>
        [SugarColumn(ColumnName = "MSG")]
        public string Msg { get; set; }
        /// <summary>
        /// çŠ¶æ€
        ///</summary>
        [SugarColumn(ColumnName = "STATES")]
        public string States { get; set; }
        /// <summary>
        /// IQC提交时间
        ///</summary>
        [SugarColumn(ColumnName = "IQC_DATE")]
        public DateTime? IqcDate { get; set; }
        /// <summary>
        /// é‡‡è´­è®¢å•ID
        ///</summary>
        [SugarColumn(ColumnName = "EBELN_K3ID")]
        public decimal? EbelnK3id { get; set; }
        /// <summary>
        /// é‡‡è´­è®¢å•行ID
        ///</summary>
        [SugarColumn(ColumnName = "LINE_K3ID")]
        public decimal? LineK3id { get; set; }
        /// <summary>
        /// å“è´¨å®¡æ ¸æ ‡è¯†
        ///</summary>
        [SugarColumn(ColumnName = "QUALITY_AUDIT")]
        public decimal? QualityAudit { get; set; }
        /// <summary>
        /// ç‰©æ–™ID
        ///</summary>
        [SugarColumn(ColumnName = "ITEM_ID")]
        public decimal? ItemId { get; set; }
        /// <summary>
        /// éªŒæ”¶æ•°
        ///</summary>
        [SugarColumn(ColumnName = "YANS_NUM")]
        public decimal? YansNum { get; set; }
        /// <summary>
        /// éªŒé€€æ•°
        ///</summary>
        [SugarColumn(ColumnName = "YANT_NUM")]
        public decimal? YantNum { get; set; }
        /// <summary>
        /// é‡‡è´­å®¡æ ¸æ ‡è¯†
        ///</summary>
        [SugarColumn(ColumnName = "CG_AUDIT")]
        public decimal? CgAudit { get; set; }
        /// <summary>
        /// é‡‡è´­æ„è§
        ///</summary>
        [SugarColumn(ColumnName = "CG_OPINION")]
        public string CgOpinion { get; set; }
        /// <summary>
        /// é‡‡è´­å¤„理方式
        ///</summary>
        [SugarColumn(ColumnName = "CG_HANDLE")]
        public string CgHandle { get; set; }
        /// <summary>
        /// å“è´¨æ„è§
        ///</summary>
        [SugarColumn(ColumnName = "QC_OPINION")]
        public string QcOpinion { get; set; }
        /// <summary>
        /// å“è´¨å¤„理方式
        ///</summary>
        [SugarColumn(ColumnName = "QC_HANDLE")]
        public string QcHandle { get; set; }
        /// <summary>
        /// ç»ç†å®¡æ ¸æ ‡è¯†
        ///</summary>
        [SugarColumn(ColumnName = "MANAGER_AUDIT")]
        public decimal? ManagerAudit { get; set; }
        /// <summary>
        /// ç»ç†æ„è§
        ///</summary>
        [SugarColumn(ColumnName = "MANAGER_OPINION")]
        public string ManagerOpinion { get; set; }
        /// <summary>
        /// ç»ç†å¤„理方式
        ///</summary>
        [SugarColumn(ColumnName = "MANAGER_HANDLE")]
        public string ManagerHandle { get; set; }
        /// <summary>
        /// é”€å”®è®¢å•
        ///</summary>
        [SugarColumn(ColumnName = "SALES_ORDER")]
        public string SalesOrder { get; set; }
        /// <summary>
        /// é‡‡è´­å®¡æ ¸äºº
        ///</summary>
        [SugarColumn(ColumnName = "CG_USER")]
        public string CgUser { get; set; }
        /// <summary>
        /// å“è´¨å®¡æ ¸äºº
        ///</summary>
        [SugarColumn(ColumnName = "QC_USER")]
        public string QcUser { get; set; }
        /// <summary>
        /// ç»ç†å®¡æ ¸äºº
        ///</summary>
        [SugarColumn(ColumnName = "MANAGER_USER")]
        public string ManagerUser { get; set; }
        /// <summary>
        /// è®¡åˆ’跟踪号
        ///</summary>
        [SugarColumn(ColumnName = "FMTONO")]
        public string Fmtono { get; set; }
        /// <summary>
        /// å®žéªŒå®¤é€æ£€æ ‡è¯†
        ///</summary>
        [SugarColumn(ColumnName = "IS_SJ")]
        public decimal? IsSj { get; set; }
        /// <summary>
        /// å®žéªŒå®¤é€æ£€å•号
        ///</summary>
        [SugarColumn(ColumnName = "SJ_NO")]
        public string SjNo { get; set; }
    }
}
StandardPda/MES.Service/Modes/MesQaItemsDetectDetail12.cs
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,88 @@
using System;
using System.Collections.Generic;
using System.Linq;
using SqlSugar;
namespace MES.Service.Modes
{
    /// <summary>
    /// IQC检验
    ///</summary>
    [SugarTable("MES_QA_ITEMS_DETECT_DETAIL12")]
    public class MesQaItemsDetectDetail12
    {
        /// <summary>
        ///
        ///</summary>
        [SugarColumn(ColumnName = "ID", IsPrimaryKey = true)]
        public decimal Id { get; set; }
        /// <summary>
        /// æ£€éªŒç»“æžœ
        ///</summary>
        [SugarColumn(ColumnName = "FCHECK_RESU")]
        public string FcheckResu { get; set; }
        /// <summary>
        /// æ£€éªŒé¡¹ç›®
        ///</summary>
        [SugarColumn(ColumnName = "FCHECK_ITEM")]
        public string FcheckItem { get; set; }
        /// <summary>
        /// ç‰©æ–™æ¡ç 
        ///</summary>
        [SugarColumn(ColumnName = "ITEM_BARCODE")]
        public string ItemBarcode { get; set; }
        /// <summary>
        ///
        ///</summary>
        [SugarColumn(ColumnName = "RELEASE_NO")]
        public string ReleaseNo { get; set; }
        /// <summary>
        ///
        ///</summary>
        [SugarColumn(ColumnName = "MAIN_ID")]
        public decimal? MainId { get; set; }
        /// <summary>
        ///
        ///</summary>
        [SugarColumn(ColumnName = "CREATE_DATE")]
        public DateTime? CreateDate { get; set; }
        /// <summary>
        ///
        ///</summary>
        [SugarColumn(ColumnName = "COMPANY")]
        public string Company { get; set; }
        /// <summary>
        ///
        ///</summary>
        [SugarColumn(ColumnName = "FACTORY")]
        public string Factory { get; set; }
        /// <summary>
        ///
        ///</summary>
        [SugarColumn(ColumnName = "FSTAND")]
        public string Fstand { get; set; }
        /// <summary>
        /// ç”Ÿæˆäºº
        ///</summary>
        [SugarColumn(ColumnName = "LASTUPDATE_BY")]
        public string LastupdateBy { get; set; }
        /// <summary>
        ///
        ///</summary>
        [SugarColumn(ColumnName = "CREATE_BY")]
        public string CreateBy { get; set; }
        [SugarColumn(IsIgnore = true)] public int? count { get; set; }
    }
}
StandardPda/MES.Service/Modes/MesQaItemsDetectDetail5.cs
@@ -1,174 +1,184 @@
using SqlSugar;
using System;
using System.Collections.Generic;
using System.Linq;
using SqlSugar;
namespace MES.Service.Modes;
/// <summary>
///     æ¥æ–™æ£€éªŒä»Žè¡¨
/// </summary>
[SugarTable("MES_QA_ITEMS_DETECT_DETAIL5")]
public class MesQaItemsDetectDetail5
namespace MES.Service.Modes
{
 /// <summary>
 /// </summary>
 [SugarColumn(ColumnName = "ID", IsPrimaryKey = true)]
    public decimal Id { get; set; }
    /// <summary>
    /// æ¥æ–™æ£€éªŒä»Žè¡¨
    ///</summary>
    [SugarTable("MES_QA_ITEMS_DETECT_DETAIL5")]
    public class MesQaItemsDetectDetail5
    {
        /// <summary>
        ///
        ///</summary>
        [SugarColumn(ColumnName = "ID", IsPrimaryKey = true)]
        public decimal Id { get; set; }
 /// <summary>
 ///     æ ‡å‡†å€¼ç±»åž‹
 /// </summary>
 [SugarColumn(ColumnName = "FTEXT_TYPE")]
    public string FtextType { get; set; }
        /// <summary>
        /// æ ‡å‡†å€¼ç±»åž‹
        ///</summary>
        [SugarColumn(ColumnName = "FTEXT_TYPE")]
        public string FtextType { get; set; }
 /// <summary>
 ///     æ ‡å‡†å€¼
 /// </summary>
 [SugarColumn(ColumnName = "FSTAND")]
    public decimal? Fstand { get; set; }
        /// <summary>
        /// æ ‡å‡†å€¼
        ///</summary>
        [SugarColumn(ColumnName = "FSTAND")]
        public decimal? Fstand { get; set; }
 /// <summary>
 ///     ä¸Šå…¬å·®
 /// </summary>
 [SugarColumn(ColumnName = "FUP_ALLOW")]
    public string FupAllow { get; set; }
        /// <summary>
        /// ä¸Šå…¬å·®
        ///</summary>
        [SugarColumn(ColumnName = "FUP_ALLOW")]
        public string FupAllow { get; set; }
 /// <summary>
 ///     ä¸‹å…¬å·®
 /// </summary>
 [SugarColumn(ColumnName = "FDOWN_ALLOW")]
    public string FdownAllow { get; set; }
        /// <summary>
        /// ä¸‹å…¬å·®
        ///</summary>
        [SugarColumn(ColumnName = "FDOWN_ALLOW")]
        public string FdownAllow { get; set; }
 /// <summary>
 ///     æ£€éªŒæ°´å‡†
 /// </summary>
 [SugarColumn(ColumnName = "SAMPLE_SIZE_NO")]
    public string SampleSizeNo { get; set; }
        /// <summary>
        /// æ£€éªŒæ°´å‡†
        ///</summary>
        [SugarColumn(ColumnName = "SAMPLE_SIZE_NO")]
        public string SampleSizeNo { get; set; }
 /// <summary>
 ///     æ£€éªŒæ°´å¹³
 /// </summary>
 [SugarColumn(ColumnName = "FCHECK_LEVEL")]
    public string FcheckLevel { get; set; }
        /// <summary>
        /// æ£€éªŒæ°´å¹³
        ///</summary>
        [SugarColumn(ColumnName = "FCHECK_LEVEL")]
        public string FcheckLevel { get; set; }
 /// <summary>
 ///     æ‹’æ”¶æ°´å¹³
 /// </summary>
 [SugarColumn(ColumnName = "FAC_LEVEL")]
    public string FacLevel { get; set; }
        /// <summary>
        /// æ‹’æ”¶æ°´å¹³
        ///</summary>
        [SugarColumn(ColumnName = "FAC_LEVEL")]
        public string FacLevel { get; set; }
 /// <summary>
 ///     æ£€éªŒé¡¹ç›®
 /// </summary>
 [SugarColumn(ColumnName = "FCHECK_ITEM")]
    public string FcheckItem { get; set; }
        /// <summary>
        /// æ£€éªŒé¡¹ç›®
        ///</summary>
        [SugarColumn(ColumnName = "FCHECK_ITEM")]
        public string FcheckItem { get; set; }
 /// <summary>
 ///     è§„格要求
 /// </summary>
 [SugarColumn(ColumnName = "FSPEC_REQU")]
    public string FspecRequ { get; set; }
        /// <summary>
        /// è§„格要求
        ///</summary>
        [SugarColumn(ColumnName = "FSPEC_REQU")]
        public string FspecRequ { get; set; }
 /// <summary>
 ///     æŠ½æ£€æ•°é‡
 /// </summary>
 [SugarColumn(ColumnName = "CHECK_QYT")]
    public decimal? CheckQyt { get; set; }
        /// <summary>
        /// æŠ½æ£€æ•°é‡
        ///</summary>
        [SugarColumn(ColumnName = "CHECK_QYT")]
        public decimal? CheckQyt { get; set; }
 /// <summary>
 ///     æ£€éªŒç»“æžœ
 /// </summary>
 [SugarColumn(ColumnName = "FCHECK_RESU")]
    public string FcheckResu { get; set; }
        /// <summary>
        /// æ£€éªŒç»“æžœ
        ///</summary>
        [SugarColumn(ColumnName = "FCHECK_RESU")]
        public string FcheckResu { get; set; }
 /// <summary>
 ///     AC数量
 /// </summary>
 [SugarColumn(ColumnName = "FAC_QTY")]
    public decimal? FacQty { get; set; }
        /// <summary>
        /// AC数量
        ///</summary>
        [SugarColumn(ColumnName = "FAC_QTY")]
        public decimal? FacQty { get; set; }
 /// <summary>
 ///     RE数量
 /// </summary>
 [SugarColumn(ColumnName = "FRE_QTY")]
    public decimal? FreQty { get; set; }
        /// <summary>
        /// RE数量
        ///</summary>
        [SugarColumn(ColumnName = "FRE_QTY")]
        public decimal? FreQty { get; set; }
 /// <summary>
 ///     ä¸åˆæ ¼æ•°
 /// </summary>
 [SugarColumn(ColumnName = "FNG_QTY")]
    public decimal? FngQty { get; set; }
        /// <summary>
        /// ä¸åˆæ ¼æ•°
        ///</summary>
        [SugarColumn(ColumnName = "FNG_QTY")]
        public decimal? FngQty { get; set; }
 /// <summary>
 ///     ä¸è‰¯çއ
 /// </summary>
 [SugarColumn(ColumnName = "FNG_RATE")]
    public decimal? FngRate { get; set; }
        /// <summary>
        /// ä¸è‰¯çއ
        ///</summary>
        [SugarColumn(ColumnName = "FNG_RATE")]
        public decimal? FngRate { get; set; }
 /// <summary>
 ///     å·²å½•入数量
 /// </summary>
 [SugarColumn(ColumnName = "FENTER_QTY")]
    public decimal? FenterQty { get; set; }
        /// <summary>
        /// å·²å½•入数量
        ///</summary>
        [SugarColumn(ColumnName = "FENTER_QTY")]
        public decimal? FenterQty { get; set; }
 /// <summary>
 /// </summary>
 [SugarColumn(ColumnName = "RELEASE_NO")]
    public string ReleaseNo { get; set; }
        /// <summary>
        ///
        ///</summary>
        [SugarColumn(ColumnName = "RELEASE_NO")]
        public string ReleaseNo { get; set; }
 /// <summary>
 /// </summary>
 [SugarColumn(ColumnName = "COMPANY")]
    public string Company { get; set; }
        /// <summary>
        ///
        ///</summary>
        [SugarColumn(ColumnName = "COMPANY")]
        public string Company { get; set; }
 /// <summary>
 /// </summary>
 [SugarColumn(ColumnName = "FACTORY")]
    public string Factory { get; set; }
        /// <summary>
        ///
        ///</summary>
        [SugarColumn(ColumnName = "FACTORY")]
        public string Factory { get; set; }
 /// <summary>
 ///     æ£€éªŒé¡¹ç›®æè¿°
 /// </summary>
 [SugarColumn(ColumnName = "FCHECK_ITEM_DESC")]
    public string FcheckItemDesc { get; set; }
        /// <summary>
        /// æ£€éªŒé¡¹ç›®æè¿°
        ///</summary>
        [SugarColumn(ColumnName = "FCHECK_ITEM_DESC")]
        public string FcheckItemDesc { get; set; }
 /// <summary>
 ///     å·¥åºå·
 /// </summary>
 [SugarColumn(ColumnName = "PROC_NO")]
    public string ProcNo { get; set; }
        /// <summary>
        /// å·¥åºå·
        ///</summary>
        [SugarColumn(ColumnName = "PROC_NO")]
        public string ProcNo { get; set; }
 /// <summary>
 ///     å·¥ä½œä¸­å¿ƒç¼–码
 /// </summary>
 [SugarColumn(ColumnName = "WORKSHOP_CENTER_CODE")]
    public string WorkshopCenterCode { get; set; }
        /// <summary>
        /// å·¥ä½œä¸­å¿ƒç¼–码
        ///</summary>
        [SugarColumn(ColumnName = "WORKSHOP_CENTER_CODE")]
        public string WorkshopCenterCode { get; set; }
 /// <summary>
 ///     å•位
 /// </summary>
 [SugarColumn(ColumnName = "FUNIT")]
    public string Funit { get; set; }
        /// <summary>
        /// å•位
        ///</summary>
        [SugarColumn(ColumnName = "FUNIT")]
        public string Funit { get; set; }
 /// <summary>
 ///     ç‰¹å®šä¿®æ”¹
 /// </summary>
 [SugarColumn(ColumnName = "GIVEN_MODIFY")]
    public short? GivenModify { get; set; }
        /// <summary>
        /// ç‰¹å®šä¿®æ”¹
        ///</summary>
        [SugarColumn(ColumnName = "GIVEN_MODIFY")]
        public short? GivenModify { get; set; }
 /// <summary>
 ///     æ£€éªŒå·¥å…·
 /// </summary>
 [SugarColumn(ColumnName = "FCHECK_TOOL")]
    public string FcheckTool { get; set; }
        /// <summary>
        /// æ£€éªŒå·¥å…·
        ///</summary>
        [SugarColumn(ColumnName = "FCHECK_TOOL")]
        public string FcheckTool { get; set; }
 /// <summary>
 ///     æ›´æ–°äºº
 /// </summary>
 [SugarColumn(ColumnName = "LASTUPDATE_BY")]
    public string LastupdateBy { get; set; }
        /// <summary>
        /// æ›´æ–°äºº
        ///</summary>
        [SugarColumn(ColumnName = "LASTUPDATE_BY")]
        public string LastupdateBy { get; set; }
 /// <summary>
 ///     æ›´æ–°æ—¶é—´
 /// </summary>
 [SugarColumn(ColumnName = "LASTUPDATE_DATE")]
    public DateTime? LastupdateDate { get; set; }
        /// <summary>
        /// æ›´æ–°æ—¶é—´
        ///</summary>
        [SugarColumn(ColumnName = "LASTUPDATE_DATE")]
        public DateTime? LastupdateDate { get; set; }
        [SugarColumn(IsIgnore = true)] public int? Unqualified { get; set; }
    }
}
StandardPda/MES.Service/Modes/MesRohIn.cs
@@ -254,7 +254,7 @@
    ///     æ”¶æ–™ç»„织
    /// </summary>
    [SugarColumn(ColumnName = "RECEIVE_ORG")]
    public decimal? ReceiveOrg { get; set; }
    public string? ReceiveOrg { get; set; }
    /// <summary>
    ///     å®¡æ‰¹æ„è§
StandardPda/MES.Service/Modes/SysUser.cs
@@ -18,7 +18,7 @@
    [StringLength(20, ErrorMessage = "Fid长度不能超出20")]
    [SugarColumn(IsPrimaryKey = true, OracleSequenceName = "BASEINFO",
        ColumnName = "FID")] //用于SqlSugar
    public string Fid { get; set; }
    public decimal Fid { get; set; }
    [StringLength(20, ErrorMessage = "Sid长度不能超出20")]
StandardPda/MES.Service/service/BasicData/MesRohInManager.cs
@@ -136,7 +136,7 @@
        mesRohIn.ErpCheckBy = rohIn.FApproverId;
        mesRohIn.ErpCheckDate = rohIn.FApproveDate;
        mesRohIn.Changereason = rohIn.PubDescSeg2;
        mesRohIn.ReceiveOrg = Convert.ToDecimal(rohIn.FReceiveOrgId);
        mesRohIn.ReceiveOrg = rohIn.FReceiveOrgId;
        mesRohIn.Remarks = rohIn.Remarks;
        mesRohIn.SrcDocType = rohIn.FSrcDocType;
        mesRohIn.SrcDoc = rohIn.FSrcDoc;
StandardPda/MES.Service/service/BasicData/MesStaffManager.cs
@@ -140,7 +140,7 @@
            Sid = Convert.ToDecimal(staff.Id),
            Fcode = staff.FStaffNumber,
            Fname = staff.FName,
            Fpassword = "8+()./,", // åˆå§‹å¯†ç 
            Fpassword = "8+()./,", // åˆå§‹å¯†ç  123456
            Lever = 0,
            Fcompany = "1000",
            Ffactory = "1000",
StandardPda/MES.Service/service/LoginService.cs
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,88 @@
using System.Data;
using System.Text;
using MES.Service.DB;
namespace MES.Service.service;
public class LoginService
{
    public static OracleSQLHelper SQLHelper = new();
    public DataTable login(string name, string pwd)
    {
        var sql =
            string.Format(@"select * from SYS_USER where FCODE = '{0}'",
                name);
        var dataTable = SQLHelper.ExecuteQuery(sql);
        if (dataTable.Rows.Count <= 0) throw new Exception("用户不存在");
        var row = dataTable.Rows[0];
        var db_password = row["FPASSWORD"].ToString();
        db_password = ProPass(db_password);
        if (!pwd.Equals(db_password)) throw new Exception("用户名或者密码错误");
        return dataTable;
    }
    public DataTable getUserMenu(string name)
    {
        var sql = "";
        if ("PL017".Equals(name))
            sql = "select PAGE_VIEW,PATH,ICOIMG from  MES_SYS_PAGEVIEW";
        else
            sql = string.Format(@"select PAGE_VIEW,PATH,ICOIMG
                    from (select PAGE_VIEW,PATH,ICOIMG
                          from MES_SYS_GUP_USER a
                                   join MES_SYS_PAGEVIEW b on a.PAGEID = b.ID
                                   join SYS_USER_ROLE c on to_char(c.ROLEID) = a.ROLEID
                          where USERID = (select fid from SYS_USER where FCODE = '{0}')
                          union all
                          select PAGE_VIEW,PATH,ICOIMG
                          from MES_SYS_GUP_USER a
                                   join MES_SYS_PAGEVIEW b on a.PAGEID = b.ID
                          where a.ROLEID = (select FCODE from SYS_USER where FCODE = '{0}'))
                    group by PATH, PAGE_VIEW, ICOIMG", name);
        return SQLHelper.ExecuteQuery(sql);
    }
    public int resetPassword(string newPwd, string name, string pwd)
    {
        login(name, pwd);
        var passwordHash = encryptPass(newPwd);
        var sql = string.Format(
            @"update SYS_USER set FPASSWORD = '{0}' where FCODE = '{1}'",
            passwordHash,
            name);
        return SQLHelper.ExecuteNonQuery(sql);
    }
    private string encryptPass(string str)
    {
        var b = Encoding.GetEncoding("iso-8859-1").GetBytes(str);
        var temp = (byte[])b.Clone();
        for (var i = 0; i < b.Length; i++) temp[i] = (byte)(b[i] ^ (8 + 18));
        var result =
            8 + Encoding.GetEncoding("iso-8859-1").GetString(temp);
        return result;
    }
    private string ProPass(string src)
    {
        var result = "";
        var first = int.Parse(src.Substring(0, 1));
        var src_tem = src.Substring(1);
        var b = Encoding.GetEncoding("iso-8859-1")
            .GetBytes(src_tem);
        var temp = (byte[])b.Clone();
        for (var i = 0; i < b.Length; i++)
            temp[i] = (byte)(temp[i] ^ (first + 18));
        result = Encoding.GetEncoding("iso-8859-1")
            .GetString(temp);
        return result;
    }
}
StandardPda/MES.Service/service/QC/LljService.cs
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,628 @@
using System.Data;
using Masuit.Tools;
using MES.Service.DB;
using MES.Service.Dto.service;
using MES.Service.Modes;
using MES.Service.util;
using SqlSugar;
using DbType = System.Data.DbType;
namespace MES.Service.service.QC;
public class LljService
{
    public (List<LtsLlj> item, int TotalCount) GetPage(XJPageResult queryObj)
    {
        if (queryObj.createUser.IsNullOrEmpty())
        {
            return ([], 0);
        }
        var db = SqlSugarHelper.GetInstance();
        var id = Convert.ToDecimal(queryObj.id);
        var totalCount = 0;
        var itemIds = GetQaItem(db, queryObj.createUser);
        var pageList = db.Queryable<LtsLlj>()
            .WhereIF(
                StringUtil.IsNotNullOrEmpty(queryObj.result) &&
                "未完成".Equals(queryObj.result),
                a => a.FcheckResu == null)
            .WhereIF(
                StringUtil.IsNotNullOrEmpty(queryObj.result) &&
                !"未完成".Equals(queryObj.result),
                a => a.FcheckResu != null)
            .WhereIF(
                itemIds is { Length: > 0 },
                a => itemIds.Contains(a.ItemId))
            .WhereIF(id > 0, a => a.Id == id)
            .OrderByDescending(a => a.Id)
            .ToPageList(queryObj.PageIndex, queryObj.Limit, ref totalCount);
        return (pageList, totalCount);
    }
    private decimal[] GetQaItem(SqlSugarClient db, string? user)
    {
        var itemsId = db.Queryable<MesItems>()
            .Select(s => s.Id).ToList();
        var iqc = db.Queryable<IqcBefore>()
            .Select(a => a.ItemId).ToList();
        var decimals = itemsId.Except(iqc).ToList();
        var array = db.Queryable<SysUser, IqcBefore, MesItems>((a, b, c) =>
                new JoinQueryInfos(JoinType.Inner, a.Fid == b.Sid,
                    JoinType.Inner, b.ItemId == c.Id))
            .Where((a, b, c) => a.Fcode == user)
            .Select((a, b, c) => c.Id).ToList();
        decimals.AddRange(array);
        var decimals1 = decimals.Distinct().ToArray();
        return decimals1;
    }
    //根据检验标准来计算检验个数
    public List<MesQaItemsDetectDetail5> SetItems(string itemNo,
        decimal quantity, string releaseNo)
    {
        var db = SqlSugarHelper.GetInstance();
        var count = db.Queryable<MesQaIqc>().Where(s => s.EE == 1 &&
            s.ISENABLED == 1
            && s.ItemNo == itemNo && s.FTYPE == "1").Count();
        if (count <= 0) return [];
        var mesQaIqcItem = db
            .Queryable<MesQaIqc>().Where(s => s.EE == 1 && s.ISENABLED == 1
                && s.ItemNo == itemNo && s.FTYPE == "1").Select(
                b => new MesQaItemsDetectDetail5
                {
                    ReleaseNo = releaseNo,
                    FacLevel = b.FacLevel,
                    FcheckItem = b.FcheckItem,
                    FdownAllow = b.FdownAllow,
                    FcheckLevel = b.FREQUENCY,
                    Fstand = b.FSTAND,
                    FupAllow = b.FupAllow,
                    SampleSizeNo = b.SampleSizeNo,
                    FenterQty = 0,
                    Factory = "1000",
                    Company = "1000",
                    // FcheckItemDesc = "0",
                    // FcheckResu = "0",
                    FcheckTool = b.FcheckTool,
                    FspecRequ = b.FspecRequ
                    // FtextType = "0",
                    // Funit = "0",
                    // LastupdateBy = "0",
                    // ProcNo = "0",
                    // WorkshopCenterCode = "0"
                }).ToList();
        mesQaIqcItem.ForEach(item =>
        {
            string LEV = item.FcheckLevel switch
            {
                null => "" // é»˜è®¤å€¼
                ,
                { } s when s.Contains("S1") => "B.FLEVEL_S1",
                { } s when s.Contains("S2") => "B.FLEVEL_S2",
                { } s when s.Contains("S3") => "B.FLEVEL_S3",
                { } s when s.Contains("S4") => "B.FLEVEL_S4",
                { } s when s.Contains("(I)") => "B.FLEVEL_I",
                { } s when s.Contains("(II)") => "B.FLEVEL_II",
                { } s when s.Contains("(III)") => "B.FLEVEL_III",
                _ => ""
            };
            if (string.IsNullOrEmpty(LEV))
                throw new Exception(item.SampleSizeNo + "的检验水平不正确");
            var sql =
                "SELECT " + LEV +
                " FROM MES_QM_AQL1 A LEFT JOIN MES_QM_AQL2 B ON B.AQL1_ID=A.ID WHERE A.SAMPLE_SIZE_NO='" +
                item.SampleSizeNo + "' AND B.LOT_FROM<= " + quantity +
                "   AND " +
                quantity + "<=B.LOT_TO";
            var maxBillNo = db.Ado.SqlQuerySingle<string>(sql);
            if (string.IsNullOrEmpty(maxBillNo))
                throw new Exception(item.SampleSizeNo + "下的" + quantity +
                                    "这个范围下没有匹配到检验项目");
            var result = ExtractSubstring(item.FacLevel, '(', ')');
            if (string.IsNullOrEmpty(result))
                throw new Exception(item.SampleSizeNo + "下的" + quantity +
                                    "拒收水平不正确");
            sql = "SELECT FSAMPLE_SIZE_WORD, " + result +
                  " Result FROM MES_QM_AQL1 A LEFT JOIN MES_QM_AQL3 C ON C.AQL1_ID=A.ID WHERE A.SAMPLE_SIZE_NO= '" +
                  item.SampleSizeNo + "'  AND SAMPLE_SIZE_WORD= '" + maxBillNo +
                  "'";
            var resultClass = db.Ado.SqlQuerySingle<ResultClass>(sql);
            item.CheckQyt = resultClass.FSAMPLE_SIZE_WORD;
            item.FreQty = resultClass.Result;
        });
        return mesQaIqcItem;
    }
    private string ExtractSubstring(string input, char startChar, char endChar)
    {
        var startIndex = input.IndexOf(startChar);
        var endIndex = input.IndexOf(endChar, startIndex);
        if (startIndex == -1 || endIndex == -1)
            // å¦‚果未找到起始字符或结束字符,则返回空字符串或者抛出异常,根据实际情况选择
            return string.Empty;
        // æˆ–者抛出异常
        // throw new ArgumentException("Start or end character not found");
        // æå–子字符串
        var length = endIndex - startIndex - 1;
        return input.Substring(startIndex + 1, length);
    }
    public int saveItem(LLJDto rkjDto)
    {
        var items = rkjDto.items;
        var userNo = rkjDto.userNo;
        SqlSugarHelper.UseTransactionWithOracle(db =>
        {
            foreach (var item in items) item.ReleaseNo = rkjDto.releaseNo;
            return db.Insertable(items).ExecuteCommand();
        });
        rkjDto.items = GetItems(rkjDto.releaseNo, null);
        var db = SqlSugarHelper.GetInstance();
        rkjDto.items.ForEach(s =>
        {
            if (s.FupAllow != null || s.Fstand != null ||
                s.FdownAllow != null) return;
            // æ²¡æœ‰å½•入参考值,判断有多少个NG,那么录入的抽检结果必须是OK或者NG,NG代表不合格
            var ifck = db.Queryable<MesQaItemsDetectDetail12>()
                .Where(x => x.FcheckResu == "NG" && x.MainId == s.Id).Count();
            //检验明细总数
            var count = db.Queryable<MesQaItemsDetectDetail12>()
                .Where(x1 => x1.MainId == s.Id).Count();
            if (ifck > s.FreQty && s.CheckQyt == count)
                s.FcheckResu = "不合格";
            else if (ifck < s.FreQty && s.CheckQyt == count)
                s.FcheckResu = "合格";
            else
                s.FcheckResu = "未完成";
            var detail = new MesQaItemsDetectDetail12();
            detail.MainId = s.Id;
            detail.ReleaseNo = rkjDto.releaseNo;
            detail.Fstand = "√";
            detail.FcheckResu = "OK";
            detail.LastupdateBy = rkjDto.userNo;
            detail.count = (int?)s.CheckQyt;
            SetQSItemDetail(detail);
        });
        return Convert.ToInt32(rkjDto.gid);
    }
    public List<MesQaItemsDetectDetail5> GetItems(string? releaseNo,
        decimal? id)
    {
        var db = SqlSugarHelper.GetInstance();
        return db.Queryable<MesQaItemsDetectDetail5, MesQaItemsDetectDetail12>(
                (a, b) =>
                    new JoinQueryInfos(JoinType.Left, a.Id == b.MainId))
            .Where((a, b) => a.ReleaseNo == releaseNo)
            // .WhereIF(id > 0, (a, b) => a.Id == id)
            .GroupBy((a, b) => new
            {
                a.Id,
                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
            }).Select((a, b) => new MesQaItemsDetectDetail5
            {
                Id = a.Id,
                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.Id),
                FcheckResu = a.FcheckResu
            }).ToList();
    }
    public int SetQSItemDetail(MesQaItemsDetectDetail12 detail)
    {
        var dbd = SqlSugarHelper.GetInstance();
        var oracle = SqlSugarHelper.UseTransactionWithOracle(db =>
        {
            List<MesQaItemsDetectDetail12> result = new();
            for (var i = 0; i < detail.count; i++)
            {
                var item = new MesQaItemsDetectDetail12();
                item.MainId = detail.MainId;
                item.ReleaseNo = detail.ReleaseNo;
                item.Fstand = detail.Fstand;
                item.FcheckResu = detail.FcheckResu;
                item.CreateBy = detail.LastupdateBy;
                item.CreateDate = DateTime.Now;
                item.Factory = "1000";
                item.Company = "1000";
                result.Add(item);
            }
            return db.Insertable(result).ExecuteCommand();
        });
        detail.CreateBy = detail.LastupdateBy;
        autoResult(detail);
        return oracle;
    }
    private int autoResult(MesQaItemsDetectDetail12 detail)
    {
        var db = SqlSugarHelper.GetInstance();
        // Single æ²¡æœ‰æŸ¥è¯¢åˆ°ç»“果时返回Null,如果结果大于1条会抛出错误
        var QsItemOqcItem = db.Queryable<MesQaItemsDetectDetail5>()
            .Single(s => s.Id == detail.MainId);
        if (QsItemOqcItem == null) return 0;
        //查询这个检验项目下的检验结果
        var count = db.Queryable<MesQaItemsDetectDetail12>()
            .Where(s => s.MainId == detail.MainId).Count();
        updateDetail5(detail);
        var result = "";
        //检验实际结果不等于应该检验的个数时直接推出
        if (QsItemOqcItem.CheckQyt != count) return 0;
        //合格的有多少个
        var passCount = db.Queryable<MesQaItemsDetectDetail12>()
            .Where(s => s.MainId == detail.MainId && s.Fstand == "√").Count();
        //不合格的有多少个
        var noCount = db.Queryable<MesQaItemsDetectDetail12>()
            .Where(s => s.MainId == detail.MainId && s.Fstand == "×").Count();
        if (count == passCount)
            result = "合格";
        //else if (count - passCount < QsItemOqcItem.FreQty)
        //    result = "不合格";
        else if (noCount >= QsItemOqcItem.FreQty)
            result = "不合格";
        var useTransactionWithOracle = SqlSugarHelper.UseTransactionWithOracle(
            db =>
            {
                var commit = 0;
                commit += db.Updateable<MesQaItemsDetectDetail5>()
                    .SetColumns(s => s.FcheckResu == result)
                    .SetColumns(s => s.FenterQty == count)
                    .Where(s => s.Id == detail.MainId)
                    .ExecuteCommand();
                return commit;
            });
        var isNull = db.Queryable<MesQaItemsDetectDetail5>()
            .Where(s => s.ReleaseNo == detail.ReleaseNo && s.FcheckResu == null)
            .Count();
        if (isNull > 0) return 1;
        //获取检验单的检验项目的个数
        var sum = db.Queryable<MesQaItemsDetectDetail5>()
            .Where(s => s.ReleaseNo == detail.ReleaseNo).Count();
        if (sum == 0) return 1;
        //获取检验单下的合格的检验项目个数
        var icount = db.Queryable<MesQaItemsDetectDetail5>()
            .Where(s => s.ReleaseNo == detail.ReleaseNo && s.FcheckResu == "合格")
            .Count();
        var FcheckResu = "不合格";
        //实际个数等于理论个数时对检验单进行判定
        if (sum == icount)
            //合格的检验结果等于总检验数视为合格
            FcheckResu = "合格";
        var sysUser = db.Queryable<SysUser>()
            .Where(s => s.Fcode == detail.CreateBy).First();
        SqlSugarHelper.UseTransactionWithOracle(db =>
        {
            return db.Updateable<MesQaItemsDetect01>()
                .SetColumns(s => s.FcheckResu == FcheckResu)
                .SetColumns(s => s.FcheckDate == DateTime.Now)
                .SetColumns(s => s.FcheckBy == sysUser.Fname)
                .SetColumns(s => s.LastupdateBy == detail.CreateBy)
                .SetColumns(s => s.LastupdateDate == DateTime.Now)
                .Where(s => s.ReleaseNo == detail.ReleaseNo)
                .ExecuteCommand();
        });
        //  if (FcheckResu.Equals("不合格"))
        //自动生成入库检异常对策
        ///     saveDetect02(detail.Id, detail.CreateBy);
        return useTransactionWithOracle;
    }
    /*  public int saveDetect02(decimal? gid, string? createBy)
     {
         var db = SqlSugarHelper.GetInstance();
         var qsItemOqcReq =
             db.Queryable<QsItemOqcReq>().Single(s => s.Id == gid);
         var mesInvItemIns = db.Queryable<MesInvItemIns>()
             .Single(s => s.BillNo == qsItemOqcReq.BillNo);
         var mesSchemeResult = db.Queryable<MesSchemeResult>()
             .Single(s => s.BillNo == mesInvItemIns.CbillNo);
         var entity = new MesQaItemsDetect02();
         entity.ItemNo = mesSchemeResult.BoardItem;
         entity.BoardItem = mesSchemeResult.BoardItem;
         entity.LineNo = mesSchemeResult.LineNo;
         entity.Aufnr = mesSchemeResult.TaskNo;
         entity.ReleaseNo = qsItemOqcReq.ReleaseNo;
         entity.LotNo = qsItemOqcReq.BillNo;
         entity.FcheckDate = qsItemOqcReq.FcheckDate;
         entity.FcheckMemo = qsItemOqcReq.Remarks;
         entity.Gid = qsItemOqcReq.Id;
         // entity.PlanQty = qsItemOqcReq.FcheckDate;
         entity.FcheckResu = "不合格";
         entity.FcheckLevel = "严重";
         entity.CreateDate = DateTime.Now;
         entity.Factory = "10000";
         entity.Company = "1000";
         entity.Ftype = "4";
         entity.Fversion = 0;
         entity.Modify1Flag = 0;
         entity.IpqcStatus = 0;
         entity.Fsubmit = 1;
         entity.CreateBy = createBy;
         entity.FcheckBy = createBy;
         return SqlSugarHelper.UseTransactionWithOracle(db => db
             .Insertable(entity)
             .ExecuteCommand());
     }
     */
    public LLJDto getXjDetail02ById(decimal? id)
    {
        var rkjDto = new LLJDto();
        var db = SqlSugarHelper.GetInstance();
        var qsItemOqcItem =
            db.Queryable<MesQaItemsDetectDetail5>().Single(s => s.Id == id);
        /* if (qsItemOqcItem.IsPass == 0)
             qsItemOqcItem.Result = "不合格";
         else if (qsItemOqcItem.IsPass == 1)
             qsItemOqcItem.Result = "合格";
         else
             qsItemOqcItem.Result = "未完成";
         if (qsItemOqcItem.Picture is { Length: > 0 })
             qsItemOqcItem.imageData =
                 Convert.ToBase64String(qsItemOqcItem.Picture);
 */
        //获取不合格数
        var count = db.Queryable<MesQaItemsDetectDetail12>()
            .Where(s => s.Fstand == "×" && s.MainId == id).Count();
        qsItemOqcItem.Unqualified = count;
        rkjDto.ItemXj01 = qsItemOqcItem;
        rkjDto.ItemXj02s = db.Queryable<MesQaItemsDetectDetail12>()
            .Where(s => s.MainId == id)
            .ToList();
        return rkjDto;
    }
    public int UpdateQSItemDetail(MesQaItemsDetectDetail12 detail)
    {
        var withOracle = SqlSugarHelper.UseTransactionWithOracle(db =>
        {
            return db.Updateable<MesQaItemsDetectDetail12>()
                .SetColumns(s => s.LastupdateBy == detail.LastupdateBy)
                // .SetColumns(s => s.LastupdateDate == DateTime.Now)
                .SetColumnsIF(StringUtil.IsNotNullOrEmpty(detail.Fstand),
                    s => s.Fstand == detail.Fstand)
                .SetColumnsIF(StringUtil.IsNotNullOrEmpty(detail.FcheckResu),
                    s => s.FcheckResu == detail.FcheckResu)
                .Where(s => s.MainId == detail.MainId && s.Id == detail.Id)
                .ExecuteCommand();
        });
        detail.CreateBy = detail.LastupdateBy;
        withOracle += autoResult(detail);
        return withOracle;
    }
//更新检验明细已检、不合格数量
    private int updateDetail5(MesQaItemsDetectDetail12 detail)
    {
        var db = SqlSugarHelper.GetInstance();
        //查询这个检验项目下的检验数量
        var count = db.Queryable<MesQaItemsDetectDetail12>()
            .Where(s => s.MainId == detail.MainId).Count();
        //获取不合格数
        var countNo = db.Queryable<MesQaItemsDetectDetail12>()
            .Where(s => s.MainId == detail.MainId && s.Fstand == "×").Count();
        //更新检验明细已检数量
        var withOracle = SqlSugarHelper.UseTransactionWithOracle(db =>
        {
            return db.Updateable<MesQaItemsDetectDetail5>()
                .SetColumns(s => s.FenterQty == count)
                .SetColumns(s => s.FngQty == countNo)
                .Where(s => s.Id == detail.MainId)
                .ExecuteCommand();
        });
        return withOracle;
    }
    //主表修改备注字段
    public int saveRemarksGid(LLJDto dto)
    {
        return SqlSugarHelper.UseTransactionWithOracle(db =>
        {
            return db.Updateable<MesQaItemsDetect01>()
                // .SetColumns(it =>
                //     it.Remarks == dto.Remarks) //SetColumns是可以叠加的 å†™2个就2个字段赋值
                .Where(it => it.ReleaseNo == dto.releaseNo)
                .ExecuteCommand();
        });
    }
    //子表修改备注字段
    public int saveRemarksPid(LLJDto dto)
    {
        return SqlSugarHelper.UseTransactionWithOracle(db =>
        {
            return db.Updateable<MesQaItemsDetectDetail5>()
                // .SetColumns(it =>
                //     it.Remarks == dto.Remarks) //SetColumns是可以叠加的 å†™2个就2个字段赋值
                .Where(it => it.Id == dto.pid)
                .ExecuteCommand();
        });
    }
    //删除主表并且连级删除子表和孙表
    public int removeXJ(string? releaseNo)
    {
        var withOracle = SqlSugarHelper.UseTransactionWithOracle(db =>
        {
            var commit = 0;
            //删除主表
            commit += db.Deleteable<MesQaItemsDetect01>()
                .Where(s => s.ReleaseNo == releaseNo)
                .ExecuteCommand();
            //删除子表
            commit += db.Deleteable<MesQaItemsDetectDetail5>()
                .Where(s => s.ReleaseNo == releaseNo)
                .ExecuteCommand();
            //删除孙表
            commit += db.Deleteable<MesQaItemsDetectDetail12>()
                .Where(s => s.ReleaseNo == releaseNo)
                .ExecuteCommand();
            return commit;
        });
        return withOracle;
    }
    public bool IqcQaSubmit(LLJDto dto)
    {
        var (factory, company) = UserUtil.GetFactory(dto.userNo);
        try
        {
            // å®šä¹‰è¾“出参数
            var outputResult = new SugarParameter("o_Result", null,
                DbType.Int32, ParameterDirection.Output,
                4000);
            var outputMessage = new SugarParameter("o_Msg", null,
                DbType.String,
                ParameterDirection.Output, 4000);
            // å®šä¹‰è¾“入参数
            var parameters = new List<SugarParameter>
            {
                new("PI_FACTORY", factory,
                    DbType.String, ParameterDirection.Input),
                new("PI_COMPANY", company, DbType.String,
                    ParameterDirection.Input),
                new("p_Release_No", dto.releaseNo, DbType.String,
                    ParameterDirection.Input),
                new("p_User", dto.userNo, DbType.String,
                    ParameterDirection.Input),
                outputResult,
                outputMessage
            };
            var db = SqlSugarHelper.GetInstance();
            // ä½¿ç”¨ SqlSugar æ‰§è¡Œå­˜å‚¨è¿‡ç¨‹
            db.Ado.ExecuteCommand(
                "BEGIN Prc_Mes_Iqc_Qa_Submit82(:PI_FACTORY, :PI_COMPANY, :p_Release_No, :p_User, :o_Result, :o_Msg); END;",
                parameters.ToArray());
            // èŽ·å–è¾“å‡ºå‚æ•°çš„å€¼
            var resultValue = outputResult.Value?.ToString();
            var messageValue = outputMessage.Value?.ToString();
            if ("1".Equals(resultValue)) throw new Exception(messageValue);
            return true;
        }
        catch (Exception ex)
        {
            throw new Exception(ex.Message);
        }
    }
}
StandardPda/MES.Service/util/ResponseResult.cs
@@ -15,6 +15,8 @@
    //返回的数据
    public object data { get; set; }
    public int TotalCount { get; set; } = 0;
    //失败的返回结果
    public static ResponseResult ResponseError(Exception e)
    {
StandardPda/MES.Service/util/UserUtil.cs
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,17 @@
using MES.Service.DB;
namespace MES.Service.util;
public class UserUtil : RepositoryNoEntity
{
    public static (string factory, string company) GetFactory(string user)
    {
        var sql =
            "select t.Ffactory factory, t.Fcompany company from sys_user t where t.fcode = upper(trim('" +
            user + "'))";
        var sqlQuerySingle = Db.Ado.SqlQuerySingle<dynamic>(sql);
        return (sqlQuerySingle.FACTORY, sqlQuerySingle.COMPANY);
    }
}
StandardPda/MESApplication/Controllers/Base/LoginController.cs
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,108 @@
using System.Dynamic;
using MES.Service.Dto.@base;
using MES.Service.service;
using MES.Service.util;
using Microsoft.AspNetCore.Mvc;
using Newtonsoft.Json.Linq;
namespace MESApplication.Controllers.Base;
/// <summary>
///     ç”¨æˆ·
/// </summary>
[Route("api/[controller]")]
[ApiController]
public class LoginController : ControllerBase
{
    /// <summary>
    ///     ç™»å½•
    /// </summary>
    /// <param name="model"></param>
    /// <returns></returns>
    [HttpPost("login")]
    public ResponseResult login([FromBody] LoginModel model)
    {
        //登录
        try
        {
            dynamic resultInfos = new ExpandoObject();
            var tbBillList =
                new LoginService().login(model.userID, model.userPass);
            resultInfos.tbBillList = tbBillList;
            return new ResponseResult
            {
                status = 0,
                message = "OK",
                data = resultInfos
            };
        }
        catch (Exception ex)
        {
            return ResponseResult.ResponseError(ex);
        }
    }
    /// <summary>
    ///     é‡è®¾å¯†ç 
    /// </summary>
    /// <param name="data"></param>
    /// <returns></returns>
    [HttpPost("resetPassword")]
    public ResponseResult resetPassword([FromBody] JObject data)
    {
        var name = data["name"].ToString();
        var pwd = data["pwd"].ToString();
        var newPwd = data["newPwd"].ToString();
        //登录
        try
        {
            dynamic resultInfos = new ExpandoObject();
            var tbBillList =
                new LoginService().resetPassword(newPwd, name, pwd);
            if (tbBillList > 0)
                return new ResponseResult
                {
                    status = 0,
                    message = "修改成功",
                    data = resultInfos
                };
            return new ResponseResult
            {
                status = 1,
                message = "修改失败",
                data = resultInfos
            };
        }
        catch (Exception ex)
        {
            return ResponseResult.ResponseError(ex);
        }
    }
    /// <summary>
    ///     ç”¨æˆ·èœå•
    /// </summary>
    /// <param name="data"></param>
    /// <returns></returns>
    [HttpPost("getUserMenu")]
    public ResponseResult getUserMenu([FromBody] JObject data)
    {
        var name = data["name"].ToString();
        try
        {
            dynamic resultInfos = new ExpandoObject();
            var tbBillList = new LoginService().getUserMenu(name);
            resultInfos.tbBillList = tbBillList;
            return new ResponseResult
            {
                status = 0,
                message = "OK",
                data = resultInfos
            };
        }
        catch (Exception ex)
        {
            return ResponseResult.ResponseError(ex);
        }
    }
}
StandardPda/MESApplication/Controllers/QC/LljController.cs
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,276 @@
using System.Dynamic;
using MES.Service.Dto.service;
using MES.Service.Modes;
using MES.Service.service.QC;
using MES.Service.util;
using Microsoft.AspNetCore.Mvc;
using Newtonsoft.Json.Linq;
namespace MESApplication.Controllers.QC;
[Route("api/[controller]")]
[ApiController]
public class LljController : ControllerBase
{
    [HttpPost("getPage")]
    public ResponseResult getPage([FromBody] XJPageResult queryObj)
    {
        try
        {
            dynamic resultInfos = new ExpandoObject();
            var (item, totalCount) = new LljService().GetPage(queryObj);
            var tbBillList =
                resultInfos.tbBillList = item;
            return new ResponseResult
            {
                status = 0,
                message = "OK",
                data = resultInfos,
                TotalCount = totalCount
            };
        }
        catch (Exception ex)
        {
            return ResponseResult.ResponseError(ex);
        }
    }
    [HttpPost("setJYItem")]
    public ResponseResult setJYItem([FromBody] JObject data)
    {
        var itemNo = data["itemNo"].ToString();
        var quantity = Convert.ToDecimal(data["quantity"].ToString());
        var releaseNo = data["releaseNo"].ToString();
        try
        {
            dynamic resultInfos = new ExpandoObject();
            var tbBillList =
                new LljService().SetItems(itemNo, quantity, releaseNo);
            resultInfos.tbBillList = tbBillList;
            return new ResponseResult
            {
                status = 0,
                message = "OK",
                data = resultInfos
            };
        }
        catch (Exception ex)
        {
            return ResponseResult.ResponseError(ex);
        }
    }
    [HttpPost("saveItem")]
    public ResponseResult saveItem([FromBody] LLJDto lljDto)
    {
        try
        {
            dynamic resultInfos = new ExpandoObject();
            var tbBillList =
                new LljService().saveItem(lljDto);
            resultInfos.tbBillList = tbBillList;
            return new ResponseResult
            {
                status = 0,
                message = "OK",
                data = resultInfos
            };
        }
        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 =
                new LljService().GetItems(releaseNo,
                    Convert.ToDecimal(id));
            resultInfos.tbBillList = tbBillList;
            return new ResponseResult
            {
                status = 0,
                message = "OK",
                data = resultInfos
            };
        }
        catch (Exception ex)
        {
            return ResponseResult.ResponseError(ex);
        }
    }
    //getXjDetail02ById
    [HttpPost("getXjDetail02ById")]
    public ResponseResult getXjDetail02ById([FromBody] JObject data)
    {
        var id = data["id"]?.ToString();
        try
        {
            dynamic resultInfos = new ExpandoObject();
            var tbBillList =
                new LljService().getXjDetail02ById(Convert.ToDecimal(id));
            resultInfos.tbBillList = tbBillList;
            return new ResponseResult
            {
                status = 0,
                message = "OK",
                data = resultInfos
            };
        }
        catch (Exception ex)
        {
            return ResponseResult.ResponseError(ex);
        }
    }
    [HttpPost("SetQSItemDetail")]
    public ResponseResult SetQSItemDetail(
        [FromBody] MesQaItemsDetectDetail12 detail)
    {
        try
        {
            dynamic resultInfos = new ExpandoObject();
            var tbBillList = new LljService();
            var detail021 = tbBillList.SetQSItemDetail(detail);
            resultInfos.tbBillList = detail021;
            return new ResponseResult
            {
                status = 0,
                message = "OK",
                data = resultInfos
            };
        }
        catch (Exception ex)
        {
            return ResponseResult.ResponseError(ex);
        }
    }
    [HttpPost("UpdateQSItemDetail")]
    public ResponseResult UpdateQSItemDetail(
        [FromBody] MesQaItemsDetectDetail12 detail)
    {
        try
        {
            dynamic resultInfos = new ExpandoObject();
            var tbBillList = new LljService();
            var detail021 = tbBillList.UpdateQSItemDetail(detail);
            resultInfos.tbBillList = detail021;
            return new ResponseResult
            {
                status = 0,
                message = "OK",
                data = resultInfos
            };
        }
        catch (Exception ex)
        {
            return ResponseResult.ResponseError(ex);
        }
    }
    //saveRemarksGid ä¸»è¡¨æ·»åŠ ä¸åˆæ ¼æè¿°
    [HttpPost("saveRemarksGid")]
    public ResponseResult saveRemarksGid([FromBody] LLJDto rkjDto)
    {
        try
        {
            dynamic resultInfos = new ExpandoObject();
            var tbBillList =
                new LljService().saveRemarksGid(rkjDto);
            resultInfos.tbBillList = tbBillList;
            return new ResponseResult
            {
                status = 0,
                message = "OK",
                data = resultInfos
            };
        }
        catch (Exception ex)
        {
            return ResponseResult.ResponseError(ex);
        }
    }
    //saveRemarksPid å­è¡¨æ·»åŠ ä¸åˆæ ¼æè¿°
    [HttpPost("saveRemarksPid")]
    public ResponseResult saveRemarksPid([FromBody] LLJDto rkjDto)
    {
        try
        {
            dynamic resultInfos = new ExpandoObject();
            var tbBillList =
                new LljService().saveRemarksPid(rkjDto);
            resultInfos.tbBillList = tbBillList;
            return new ResponseResult
            {
                status = 0,
                message = "OK",
                data = resultInfos
            };
        }
        catch (Exception ex)
        {
            return ResponseResult.ResponseError(ex);
        }
    }
    //removeXJ åˆ é™¤
    [HttpPost("removeXJ")]
    public ResponseResult removeXJ([FromBody] JObject data)
    {
        var releaseNo = data["releaseNo"]?.ToString();
        try
        {
            dynamic resultInfos = new ExpandoObject();
            var tbBillList =
                new LljService().removeXJ(releaseNo);
            resultInfos.tbBillList = tbBillList;
            return new ResponseResult
            {
                status = 0,
                message = "OK",
                data = resultInfos
            };
        }
        catch (Exception ex)
        {
            return ResponseResult.ResponseError(ex);
        }
    }
    //IqcQaSubmit
    [HttpPost("IqcQaSubmit")]
    public ResponseResult IqcQaSubmit(LLJDto rkjDto)
    {
        try
        {
            dynamic resultInfos = new ExpandoObject();
            var tbBillList =
                new LljService().IqcQaSubmit(rkjDto);
            resultInfos.tbBillList = tbBillList;
            return new ResponseResult
            {
                status = 0,
                message = "OK",
                data = resultInfos
            };
        }
        catch (Exception ex)
        {
            return ResponseResult.ResponseError(ex);
        }
    }
}
StandardPda/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.104 )(PORT = 1521))(CONNECT_DATA = (SERVICE_NAME = ORCL))); Persist Security Info=True;User ID = zmz_prd; Password=zmzprd"
    "DataBaseConn": "Data Source = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = 122.226.249.238 )(PORT = 5936))(CONNECT_DATA = (SERVICE_NAME = ORCL))); Persist Security Info=True;User ID = zmz_prd; Password=zmzprd"
  }
}