zyf
2025-05-28 47d3c9e31edd16c02e3c74ff45e9772f9ca550b2
采购申请和BOM接口
已修改24个文件
已添加14个文件
2059 ■■■■■ 文件已修改
MES.Service/Dto/service/BOMDto.cs 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
MES.Service/Dto/service/CgsqDto.cs 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
MES.Service/Modes/BOM/MesBomDetail1.cs 184 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
MES.Service/Modes/BOM/MesBomDetail2.cs 69 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
MES.Service/Modes/BOM/MesBomMaster.cs 159 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
MES.Service/Modes/MesCgsq.cs 134 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
MES.Service/Modes/MesCgsqDetail.cs 154 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
MES.Service/bin/Debug/net8.0/MES.Service.dll 补丁 | 查看 | 原始文档 | blame | 历史
MES.Service/bin/Debug/net8.0/MES.Service.pdb 补丁 | 查看 | 原始文档 | blame | 历史
MES.Service/bin/Release/net8.0/MES.Service.dll 补丁 | 查看 | 原始文档 | blame | 历史
MES.Service/bin/Release/net8.0/MES.Service.pdb 补丁 | 查看 | 原始文档 | blame | 历史
MES.Service/service/BOM/MesBomDetail1Manager.cs 78 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
MES.Service/service/BOM/MesBomDetail2Manager.cs 78 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
MES.Service/service/BOM/MesBomMasterManager.cs 260 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
MES.Service/service/MesCgsqDetailManager.cs 78 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
MES.Service/service/MesCgsqManager.cs 218 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
MESApplication/Controllers/BOM/MesBomMasterController.cs 268 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
MESApplication/Controllers/MesCgsqController.cs 267 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
MESApplication/MESApplication.csproj.user 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
MESApplication/Properties/PublishProfiles/FolderProfile.pubxml.user 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
MESApplication/bin/Debug/net8.0/MES.Service.dll 补丁 | 查看 | 原始文档 | blame | 历史
MESApplication/bin/Debug/net8.0/MES.Service.pdb 补丁 | 查看 | 原始文档 | blame | 历史
MESApplication/bin/Debug/net8.0/MESApplication.dll 补丁 | 查看 | 原始文档 | blame | 历史
MESApplication/bin/Debug/net8.0/MESApplication.exe 补丁 | 查看 | 原始文档 | blame | 历史
MESApplication/bin/Debug/net8.0/MESApplication.pdb 补丁 | 查看 | 原始文档 | blame | 历史
MESApplication/bin/Debug/net8.0/MESApplication.xml 72 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
MESApplication/bin/Release/net8.0/MES.Service.dll 补丁 | 查看 | 原始文档 | blame | 历史
MESApplication/bin/Release/net8.0/MES.Service.pdb 补丁 | 查看 | 原始文档 | blame | 历史
MESApplication/bin/Release/net8.0/MESApplication.deps.json 5 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
MESApplication/bin/Release/net8.0/MESApplication.dll 补丁 | 查看 | 原始文档 | blame | 历史
MESApplication/bin/Release/net8.0/MESApplication.exe 补丁 | 查看 | 原始文档 | blame | 历史
MESApplication/bin/Release/net8.0/MESApplication.pdb 补丁 | 查看 | 原始文档 | blame | 历史
MESApplication/bin/Release/net8.0/publish/MES.Service.dll 补丁 | 查看 | 原始文档 | blame | 历史
MESApplication/bin/Release/net8.0/publish/MES.Service.pdb 补丁 | 查看 | 原始文档 | blame | 历史
MESApplication/bin/Release/net8.0/publish/MESApplication.deps.json 5 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
MESApplication/bin/Release/net8.0/publish/MESApplication.dll 补丁 | 查看 | 原始文档 | blame | 历史
MESApplication/bin/Release/net8.0/publish/MESApplication.exe 补丁 | 查看 | 原始文档 | blame | 历史
MESApplication/bin/Release/net8.0/publish/MESApplication.pdb 补丁 | 查看 | 原始文档 | blame | 历史
MES.Service/Dto/service/BOMDto.cs
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,12 @@
using MES.Service.Modes;
namespace MES.Service.Dto.service;
public class MesBomDto
{
    public string? Type { get; set; }
    public MesBomMaster? Main { get; set; }
    public List<MesBomDetail1>? DT1 { get; set; }
    public List<MesBomDetail2>? DT2 { get; set; }
}
MES.Service/Dto/service/CgsqDto.cs
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,12 @@
using MES.Service.Modes;
namespace MES.Service.Dto.service;
public class CgsqDto
{
    public string? Type { get; set; }
    public Cgsq? CgsqMain { get; set; }
    public List<CgsqDetail>? CgsqDT { get; set; }
}
MES.Service/Modes/BOM/MesBomDetail1.cs
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,184 @@
using System;
using System.Collections.Generic;
using System.Linq;
using SqlSugar;
namespace MES.Service.Modes
{
    /// <summary>
    ///
    ///</summary>
    [SugarTable("MES_BOM_DETAIL1")]
    public class MesBomDetail1
    {
        /// <summary>
        ///
        ///</summary>
         [SugarColumn(ColumnName="ERPID", IsPrimaryKey = true)]
         public decimal? Erpid { get; set; }
        /// <summary>
        ///
        ///</summary>
         [SugarColumn(ColumnName="ERPHID"    )]
         public decimal? Erphid { get; set; }
        /// <summary>
        /// é¡¹æ¬¡
        ///</summary>
         [SugarColumn(ColumnName="FREPLACEGROUP"    )]
         public string Freplacegroup { get; set; }
        /// <summary>
        /// å˜åŠ¨æŸè€—çŽ‡ï¼ˆå¦‚ 0.05 è¡¨ç¤º 5%)
        ///</summary>
         [SugarColumn(ColumnName="FSCRAPRATE"    )]
         public decimal Fscraprate { get; set; }
        /// <summary>
        /// ä½ç½®å·
        ///</summary>
         [SugarColumn(ColumnName="FPOSITIONNO"    )]
         public string Fpositionno { get; set; }
        /// <summary>
        /// å­é¡¹ç‰©æ–™ç¼–码
        ///</summary>
         [SugarColumn(ColumnName="FMATERIALIDCHILD"    )]
         public string Fmaterialidchild { get; set; }
        /// <summary>
        /// ç”¨é‡åˆ†å­
        ///</summary>
         [SugarColumn(ColumnName="FNUMERATOR"    )]
         public long? Fnumerator { get; set; }
        /// <summary>
        /// ç”¨é‡åˆ†æ¯
        ///</summary>
         [SugarColumn(ColumnName="FDENOMINATOR"    )]
         public long? Fdenominator { get; set; }
        /// <summary>
        /// å­é¡¹ç‰©æ–™åç§°
        ///</summary>
         [SugarColumn(ColumnName="FCHILDITEMNAME"    )]
         public string Fchilditemname { get; set; }
        /// <summary>
        /// å­é¡¹ç‰©æ–™å±žæ€§
        ///</summary>
         [SugarColumn(ColumnName="FCHILDITEMPROPERTY"    )]
         public string Fchilditemproperty { get; set; }
        /// <summary>
        /// ä¾›åº”类型
        ///</summary>
         [SugarColumn(ColumnName="FSUPPLYTYPE"    )]
         public string Fsupplytype { get; set; }
        /// <summary>
        /// å­é¡¹ç±»åž‹
        ///</summary>
         [SugarColumn(ColumnName="FMATERIALTYPE"    )]
         public string Fmaterialtype { get; set; }
        /// <summary>
        /// æ ‡å‡†ç‚¹æ•°
        ///</summary>
         [SugarColumn(ColumnName="F_UNW_BZDS_1"    )]
         public decimal? FUnwBzds1 { get; set; }
        /// <summary>
        /// å­é¡¹å•位
        ///</summary>
         [SugarColumn(ColumnName="FCHILDUNITID"    )]
         public string Fchildunitid { get; set; }
        /// <summary>
        /// ç”¨é‡ç±»åž‹
        ///</summary>
         [SugarColumn(ColumnName="FDOSAGETYPE"    )]
         public string Fdosagetype { get; set; }
        /// <summary>
        /// å­é¡¹ BOM ç‰ˆæœ¬
        ///</summary>
         [SugarColumn(ColumnName="FBOMID"    )]
         public string Fbomid { get; set; }
        /// <summary>
        /// å¤‡æ³¨
        ///</summary>
         [SugarColumn(ColumnName="FMEMO"    )]
         public string Fmemo { get; set; }
        /// <summary>
        /// é»˜è®¤å‘料仓库
        ///</summary>
         [SugarColumn(ColumnName="FSTOCKID"    )]
         public string Fstockid { get; set; }
        /// <summary>
        /// è·³å±‚(Y/N)
        ///</summary>
         [SugarColumn(ColumnName="FISSKIP"    )]
         public string Fisskip { get; set; }
        /// <summary>
        /// å­˜åœ¨å¤šä¸ªæ›¿ä»£æ–¹æ¡ˆï¼ˆY/N)
        ///</summary>
         [SugarColumn(ColumnName="FISMULCSD"    )]
         public string Fismulcsd { get; set; }
        /// <summary>
        /// ç”Ÿæ•ˆæ—¥æœŸ
        ///</summary>
         [SugarColumn(ColumnName="FEFFECTDATE"    )]
         public DateTime? Feffectdate { get; set; }
        /// <summary>
        /// å¤±æ•ˆæ—¥æœŸ
        ///</summary>
         [SugarColumn(ColumnName="FEXPIREDATE"    )]
         public DateTime? Fexpiredate { get; set; }
        /// <summary>
        /// å‘料方式
        ///</summary>
         [SugarColumn(ColumnName="FISSUETYPE"    )]
         public string Fissuetype { get; set; }
        /// <summary>
        /// å‡€éœ€æ±‚比例
        ///</summary>
         [SugarColumn(ColumnName="FNETDEMANDRATE"    )]
         public decimal Fnetdemandrate { get; set; }
        /// <summary>
        /// è´´ç‰‡å·¥è‰ºï¼ˆå­é¡¹ï¼‰
        ///</summary>
         [SugarColumn(ColumnName="F_UNW_TEXT_TPGY_Z"    )]
         public string FUnwTextTpgyZ { get; set; }
        /// <summary>
        /// å€’冲时机
        ///</summary>
         [SugarColumn(ColumnName="FBACKFLUSHTYPE"    )]
         public string Fbackflushtype { get; set; }
        /// <summary>
        /// è¶…发控制方式
        ///</summary>
         [SugarColumn(ColumnName="FOVERCONTROLMODE"    )]
         public string Fovercontrolmode { get; set; }
        /// <summary>
        /// æœ€å°å‘料批量
        ///</summary>
         [SugarColumn(ColumnName="FBPMINISSUEQTY"    )]
         public decimal? Fbpminissueqty { get; set; }
        /// <summary>
        /// æ˜¯å¦è€ƒè™‘最小发料(Y/N)
        ///</summary>
         [SugarColumn(ColumnName="FISMINISSUEQTY"    )]
         public string Fisminissueqty { get; set; }
        /// <summary>
        /// æ˜¯å¦å‘损耗(Y/N)
        ///</summary>
         [SugarColumn(ColumnName="FISGETSCRAP"    )]
         public string Fisgetscrap { get; set; }
        /// <summary>
        /// å·¥åºåºåˆ—
        ///</summary>
         [SugarColumn(ColumnName="FOPTQUEUE"    )]
         public string Foptqueue { get; set; }
        /// <summary>
        /// å·¥åºID
        ///</summary>
         [SugarColumn(ColumnName="FOPERID"    )]
         public string Foperid { get; set; }
        /// <summary>
        /// ä½œä¸šID
        ///</summary>
         [SugarColumn(ColumnName="FPROCESSID"    )]
         public string Fprocessid { get; set; }
        /// <summary>
        /// è®¡ä»·ç‚¹æ•°
        ///</summary>
         [SugarColumn(ColumnName="F_UNW_JJDS_1"    )]
         public decimal? FUnwJjds1 { get; set; }
    }
}
MES.Service/Modes/BOM/MesBomDetail2.cs
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,69 @@
using System;
using System.Collections.Generic;
using System.Linq;
using SqlSugar;
namespace MES.Service.Modes
{
    /// <summary>
    ///
    ///</summary>
    [SugarTable("MES_BOM_DETAIL2")]
    public class MesBomDetail2
    {
        /// <summary>
        ///
        ///</summary>
         [SugarColumn(ColumnName = "ERPID", IsPrimaryKey = true)]
         public decimal? Erpid { get; set; }
        /// <summary>
        ///
        ///</summary>
         [SugarColumn(ColumnName="ERPHID"    )]
         public decimal? Erphid { get; set; }
        /// <summary>
        /// é˜¶æ¢¯ç”¨é‡-启始数量
        ///</summary>
         [SugarColumn(ColumnName="FSTARTQTY"    )]
         public decimal? Fstartqty { get; set; }
        /// <summary>
        /// é˜¶æ¢¯ç”¨é‡-截止数量
        ///</summary>
         [SugarColumn(ColumnName="FENDQTY"    )]
         public decimal? Fendqty { get; set; }
        /// <summary>
        /// å­é¡¹å•位
        ///</summary>
         [SugarColumn(ColumnName="FUNITIDLOT"    )]
         public string Funitidlot { get; set; }
        /// <summary>
        /// å›ºå®šæŸè€—
        ///</summary>
         [SugarColumn(ColumnName="FFIXSCRAPQTYLOT"    )]
         public decimal? Ffixscrapqtylot { get; set; }
        /// <summary>
        /// å˜åŠ¨æŸè€—çŽ‡
        ///</summary>
         [SugarColumn(ColumnName="FSCRAPRATELOT"    )]
         public decimal Fscrapratelot { get; set; }
        /// <summary>
        /// ç”¨é‡ï¼šåˆ†å­
        ///</summary>
         [SugarColumn(ColumnName="FNUMERATORLOT"    )]
         public long? Fnumeratorlot { get; set; }
        /// <summary>
        /// ç”¨é‡ï¼šåˆ†æ¯
        ///</summary>
         [SugarColumn(ColumnName="FDENOMINATORLOT"    )]
         public long? Fdenominatorlot { get; set; }
        /// <summary>
        /// å­é¡¹ç‰©æ–™ç¼–码
        ///</summary>
         [SugarColumn(ColumnName="FMATERIALIDLOTBASED"    )]
         public string Fmaterialidlotbased { get; set; }
        /// <summary>
        /// åºå·
        ///</summary>
         [SugarColumn(ColumnName="LINE_NUMBER"    )]
         public decimal LineNumber { get; set; }
    }
}
MES.Service/Modes/BOM/MesBomMaster.cs
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,159 @@
using System;
using System.Collections.Generic;
using System.Linq;
using SqlSugar;
namespace MES.Service.Modes
{
    /// <summary>
    ///
    ///</summary>
    [SugarTable("MES_BOM_MASTER")]
    public class MesBomMaster
    {
        /// <summary>
        ///
        ///</summary>
         [SugarColumn(ColumnName="ERPID", IsPrimaryKey = true)]
         public decimal? Erpid { get; set; }
        /// <summary>
        /// å•据类型
        ///</summary>
         [SugarColumn(ColumnName="FBILLTYPE"    )]
         public string Fbilltype { get; set; }
        /// <summary>
        /// BOM分类
        ///</summary>
         [SugarColumn(ColumnName="FBOMCATEGORY"    )]
         public string Fbomcategory { get; set; }
        /// <summary>
        /// BOM用途
        ///</summary>
         [SugarColumn(ColumnName="FBOMUSE"    )]
         public string Fbomuse { get; set; }
        /// <summary>
        /// BOM分组
        ///</summary>
         [SugarColumn(ColumnName="FGROUP"    )]
         public string Fgroup { get; set; }
        /// <summary>
        /// BOM编码
        ///</summary>
         [SugarColumn(ColumnName="FNUMBER"    )]
         public string Fnumber { get; set; }
        /// <summary>
        /// BOM版本号
        ///</summary>
         [SugarColumn(ColumnName="F_UNW_BOM_BB"    )]
         public string FUnwBomBb { get; set; }
        /// <summary>
        /// ç”Ÿæ•ˆæ—¥æœŸ
        ///</summary>
         [SugarColumn(ColumnName="EFFECTIVE_DATE"    )]
         public DateTime? EffectiveDate { get; set; }
        /// <summary>
        /// å¤±æ•ˆæ—¥æœŸ
        ///</summary>
         [SugarColumn(ColumnName="EXPIRATION_DATE"    )]
         public DateTime? ExpirationDate { get; set; }
        /// <summary>
        /// çˆ¶é¡¹ç‰©æ–™ç¼–码
        ///</summary>
         [SugarColumn(ColumnName="FMATERIALID"    )]
         public string Fmaterialid { get; set; }
        /// <summary>
        /// çˆ¶é¡¹ç‰©æ–™åç§°
        ///</summary>
         [SugarColumn(ColumnName="FITEMNAME"    )]
         public string Fitemname { get; set; }
        /// <summary>
        /// è®¡é‡å•位
        ///</summary>
         [SugarColumn(ColumnName="FBASEUNITID"    )]
         public string Fbaseunitid { get; set; }
        /// <summary>
        /// åˆ›å»ºäºº
        ///</summary>
         [SugarColumn(ColumnName="FCREATORID"    )]
         public string Fcreatorid { get; set; }
        /// <summary>
        /// åˆ›å»ºæ—¶é—´
        ///</summary>
         [SugarColumn(ColumnName="FCREATEDATE"    )]
         public DateTime? Fcreatedate { get; set; }
        /// <summary>
        /// ç‰©æ–™å±žæ€§
        ///</summary>
         [SugarColumn(ColumnName="FITEMPPROPERTY"    )]
         public string Fitempproperty { get; set; }
        /// <summary>
        /// æè¿°
        ///</summary>
         [SugarColumn(ColumnName="FDESCRIPTION"    )]
         public string Fdescription { get; set; }
        /// <summary>
        /// ä¿®æ”¹äºº
        ///</summary>
         [SugarColumn(ColumnName="FMODIFIERID"    )]
         public string Fmodifierid { get; set; }
        /// <summary>
        /// ä¿®æ”¹æ—¶é—´
        ///</summary>
         [SugarColumn(ColumnName="FMODIFYDATE"    )]
         public DateTime? Fmodifydate { get; set; }
        /// <summary>
        /// å®¡æ ¸äºº
        ///</summary>
         [SugarColumn(ColumnName="FAPPROVERID"    )]
         public string Fapproverid { get; set; }
        /// <summary>
        /// å®¡æ ¸æ—¶é—´
        ///</summary>
         [SugarColumn(ColumnName="FAPPROVEDATE"    )]
         public DateTime? Fapprovedate { get; set; }
        /// <summary>
        /// ç¦ç”¨åŽŸå› 
        ///</summary>
         [SugarColumn(ColumnName="FFORBIDRESON"    )]
         public string Fforbidreson { get; set; }
        /// <summary>
        /// ç¦ç”¨çŠ¶æ€
        ///</summary>
         [SugarColumn(ColumnName="FFORBIDSTATUS"    )]
         public string Fforbidstatus { get; set; }
        /// <summary>
        /// ç¦ç”¨äºº
        ///</summary>
         [SugarColumn(ColumnName="FFORBIDDERID"    )]
         public string Fforbidderid { get; set; }
        /// <summary>
        /// ç¦ç”¨æ—¥æœŸ
        ///</summary>
         [SugarColumn(ColumnName="FFORBIDDATE"    )]
         public DateTime? Fforbiddate { get; set; }
        /// <summary>
        /// åˆ›å»ºç»„织
        ///</summary>
         [SugarColumn(ColumnName="CREATE_ORGANIZATION"    )]
         public string CreateOrganization { get; set; }
        /// <summary>
        /// ä½¿ç”¨ç»„织
        ///</summary>
         [SugarColumn(ColumnName="USING_ORGANIZATION"    )]
         public string UsingOrganization { get; set; }
        /// <summary>
        /// å·¥è‰ºè·¯çº¿
        ///</summary>
         [SugarColumn(ColumnName="ROUTING"    )]
         public string Routing { get; set; }
        /// <summary>
        /// è´´ç‰‡å·¥è‰º
        ///</summary>
         [SugarColumn(ColumnName="F_UNW_TEXT_TPGY"    )]
         public string FUnwTextTpgy { get; set; }
        /// <summary>
        /// BOM更新类型
        ///</summary>
         [SugarColumn(ColumnName="BOM_UPDATE_TYPE"    )]
         public string BomUpdateType { get; set; }
    }
}
MES.Service/Modes/MesCgsq.cs
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,134 @@
using System;
using System.Collections.Generic;
using System.Linq;
using SqlSugar;
namespace MES.Service.Modes
{
    /// <summary>
    ///
    ///</summary>
    [SugarTable("MES_CGSQ")]
    public class Cgsq
    {
        /// <summary>
        ///
        ///</summary>
         [SugarColumn(ColumnName="ERPID", IsPrimaryKey = true)]
         public decimal? ERPID { get; set; }
        /// <summary>
        /// å•据类型
        ///</summary>
         [SugarColumn(ColumnName="FBILLTYPEID"    )]
         public string Fbilltypeid { get; set; }
        /// <summary>
        /// å•据编号
        ///</summary>
         [SugarColumn(ColumnName="FBILLNO"    )]
         public string Fbillno { get; set; }
        /// <summary>
        /// ç”³è¯·æ—¥æœŸ
        ///</summary>
         [SugarColumn(ColumnName="FAPPLICATIONDATE"    )]
         public DateTime? Fapplicationdate { get; set; }
        /// <summary>
        /// ç”³è¯·ç±»åž‹
        ///</summary>
         [SugarColumn(ColumnName="FREQUESTTYPE"    )]
         public string Frequesttype { get; set; }
        /// <summary>
        /// æ²»å…·æ¨¡å…·åŠ å·¥åŠé‡‡è´­
        ///</summary>
         [SugarColumn(ColumnName="F_UNW_COMBO_ZJMJ"    )]
         public string FUnwComboZjmj { get; set; }
        /// <summary>
        /// ç”³è¯·ç»„织
        ///</summary>
         [SugarColumn(ColumnName="APPLYING_ORGANIZATION_ID"    )]
         public string ApplyingOrganizationId { get; set; }
        /// <summary>
        /// ç”³è¯·éƒ¨é—¨
        ///</summary>
         [SugarColumn(ColumnName="FAPPLICATIONDEPTID"    )]
         public string Fapplicationdeptid { get; set; }
        /// <summary>
        /// ç”³è¯·äºº
        ///</summary>
         [SugarColumn(ColumnName="FAPPLICANTID"    )]
         public string Fapplicantid { get; set; }
        /// <summary>
        /// å¸åˆ«
        ///</summary>
         [SugarColumn(ColumnName="FCURRENCYID"    )]
         public string Fcurrencyid { get; set; }
        /// <summary>
        /// éªŒæ”¶æ–¹å¼
        ///</summary>
         [SugarColumn(ColumnName="FACCTYPE"    )]
         public string Facctype { get; set; }
        /// <summary>
        /// å•据状态
        ///</summary>
         [SugarColumn(ColumnName="FDOCUMENTSTATUS"    )]
         public string Fdocumentstatus { get; set; }
        /// <summary>
        /// å¤‡æ³¨
        ///</summary>
         [SugarColumn(ColumnName="FNOTE"    )]
         public string Fnote { get; set; }
        /// <summary>
        /// åˆ›å»ºäºº
        ///</summary>
         [SugarColumn(ColumnName="FCREATORID"    )]
         public string Fcreatorid { get; set; }
        /// <summary>
        /// åˆ›å»ºæ—¥æœŸ
        ///</summary>
         [SugarColumn(ColumnName="FCREATEDATE"    )]
         public DateTime? Fcreatedate { get; set; }
        /// <summary>
        /// å®¡æ ¸äºº
        ///</summary>
         [SugarColumn(ColumnName="FAPPROVERID"    )]
         public string Fapproverid { get; set; }
        /// <summary>
        /// å®¡æ ¸æ—¥æœŸ
        ///</summary>
         [SugarColumn(ColumnName="FAPPROVEDATE"    )]
         public DateTime? Fapprovedate { get; set; }
        /// <summary>
        /// å…³é—­çŠ¶æ€
        ///</summary>
         [SugarColumn(ColumnName="FCLOSESTATUS"    )]
         public string Fclosestatus { get; set; }
        /// <summary>
        /// å…³é—­æ—¥æœŸ
        ///</summary>
         [SugarColumn(ColumnName="FCLOSEDATE"    )]
         public DateTime? Fclosedate { get; set; }
        /// <summary>
        /// å…³é—­äºº
        ///</summary>
         [SugarColumn(ColumnName="FCLOSERID"    )]
         public string Fcloserid { get; set; }
        /// <summary>
        /// å…³é—­åŽŸå› 
        ///</summary>
         [SugarColumn(ColumnName="FCLOSEREASON"    )]
         public string Fclosereason { get; set; }
        /// <summary>
        /// ä¿®åŽä¿®æ”¹äºº
        ///</summary>
         [SugarColumn(ColumnName="FMODIFIERID"    )]
         public string Fmodifierid { get; set; }
        /// <summary>
        /// ä¿®åŽä¿®æ”¹æ—¥æœŸ
        ///</summary>
         [SugarColumn(ColumnName="FMODIFYDATE"    )]
         public DateTime? Fmodifydate { get; set; }
        /// <summary>
        /// æ‰‹å·¥å…³é—­
        ///</summary>
         [SugarColumn(ColumnName="FMANUALCLOSE"    )]
         public string Fmanualclose { get; set; }
    }
}
MES.Service/Modes/MesCgsqDetail.cs
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,154 @@
using System;
using System.Collections.Generic;
using System.Linq;
using SqlSugar;
namespace MES.Service.Modes
{
    /// <summary>
    ///
    ///</summary>
    [SugarTable("MES_CGSQ_DETAIL")]
    public class CgsqDetail
    {
        /// <summary>
        ///
        ///</summary>
         [SugarColumn(ColumnName="ERPID", IsPrimaryKey = true    )]
         public decimal? ERPID { get; set; }
        /// <summary>
        ///
        ///</summary>
         [SugarColumn(ColumnName="ERPHID")]
         public decimal? ERPHID { get; set; }
        /// <summary>
        /// åºå·
        ///</summary>
         [SugarColumn(ColumnName="LINE_NUMBER"    )]
         public decimal LineNumber { get; set; }
        /// <summary>
        /// é”€å”®è®¢å•号
        ///</summary>
         [SugarColumn(ColumnName="F_UNW_TEXT_XSDDH"    )]
         public string FUnwTextXsddh { get; set; }
        /// <summary>
        /// éœ€æ±‚组织
        ///</summary>
         [SugarColumn(ColumnName="OWNER_ORGANIZATION_ID"    )]
         public string OwnerOrganizationId { get; set; }
        /// <summary>
        /// ç‰©æ–™ç¼–码
        ///</summary>
         [SugarColumn(ColumnName="FMATERIALID"    )]
         public string Fmaterialid { get; set; }
        /// <summary>
        /// è§„格型号
        ///</summary>
         [SugarColumn(ColumnName="FMATERIALMODEL"    )]
         public string Fmaterialmodel { get; set; }
        /// <summary>
        /// ç‰©æ–™åç§°
        ///</summary>
         [SugarColumn(ColumnName="FMATERIALNAME"    )]
         public string Fmaterialname { get; set; }
        /// <summary>
        /// ç”³è¯·å•位
        ///</summary>
         [SugarColumn(ColumnName="FUNITID"    )]
         public string Funitid { get; set; }
        /// <summary>
        /// ç”³è¯·æ•°é‡
        ///</summary>
         [SugarColumn(ColumnName="FREQQTY"    )]
         public decimal? Freqqty { get; set; }
        /// <summary>
        /// æ‰¹å‡†æ•°é‡
        ///</summary>
         [SugarColumn(ColumnName="FAPPROVEQTY"    )]
         public decimal? Fapproveqty { get; set; }
        /// <summary>
        /// åˆ°è´§æ—¥æœŸ
        ///</summary>
         [SugarColumn(ColumnName="FARRIVALDATE"    )]
         public DateTime? Farrivaldate { get; set; }
        /// <summary>
        /// å»ºè®®é‡‡è´­æ—¥æœŸ
        ///</summary>
         [SugarColumn(ColumnName="FSUGGESTPURDATE"    )]
         public DateTime? Fsuggestpurdate { get; set; }
        /// <summary>
        /// é‡‡è´­ç»„织
        ///</summary>
         [SugarColumn(ColumnName="BUYER_ORGANIZATION_ID"    )]
         public string BuyerOrganizationId { get; set; }
        /// <summary>
        /// å»ºè®®ä¾›åº”商
        ///</summary>
         [SugarColumn(ColumnName="FSUGGESTSUPPLIERID"    )]
         public string Fsuggestsupplierid { get; set; }
        /// <summary>
        /// æ”¶æ–™ç»„织
        ///</summary>
         [SugarColumn(ColumnName="WAREHOUSE_ID"    )]
         public string WarehouseId { get; set; }
        /// <summary>
        /// åº“存单位
        ///</summary>
         [SugarColumn(ColumnName="FREQSTOCKUNITID"    )]
         public string Freqstockunitid { get; set; }
        /// <summary>
        /// åº“存单位数量
        ///</summary>
         [SugarColumn(ColumnName="FREQSTOCKQTY"    )]
         public decimal? Freqstockqty { get; set; }
        /// <summary>
        /// è®¡ä»·å•位
        ///</summary>
         [SugarColumn(ColumnName="FPRICEUNITID"    )]
         public string Fpriceunitid { get; set; }
        /// <summary>
        /// è®¡ä»·æ•°é‡
        ///</summary>
         [SugarColumn(ColumnName="FPRICEUNITQTY"    )]
         public decimal? Fpriceunitqty { get; set; }
        /// <summary>
        /// æå‰æœŸ
        ///</summary>
         [SugarColumn(ColumnName="FLEADTIME"    )]
         public decimal Fleadtime { get; set; }
        /// <summary>
        /// è®¡åˆ’跟踪号
        ///</summary>
         [SugarColumn(ColumnName="FMTONO"    )]
         public string Fmtono { get; set; }
        /// <summary>
        /// éœ€æ±‚跟踪号
        ///</summary>
         [SugarColumn(ColumnName="FREQTRACENO"    )]
         public string Freqtraceno { get; set; }
        /// <summary>
        /// éœ€æ±‚单据编号
        ///</summary>
         [SugarColumn(ColumnName="FDEMANDBILLNO"    )]
         public string Fdemandbillno { get; set; }
        /// <summary>
        /// éœ€æ±‚单据行号
        ///</summary>
         [SugarColumn(ColumnName="FDEMANDBILLENTRYSEQ"    )]
         public decimal Fdemandbillentryseq { get; set; }
        /// <summary>
        /// ä¸šåŠ¡ç»ˆæ­¢
        ///</summary>
         [SugarColumn(ColumnName="FMRPTERMINATESTATUS"    )]
         public string Fmrpterminatestatus { get; set; }
        /// <summary>
        /// ç»ˆæ­¢äºº
        ///</summary>
         [SugarColumn(ColumnName="FTERMINATERID"    )]
         public string Fterminaterid { get; set; }
        /// <summary>
        /// ç»ˆæ­¢æ—¥æœŸ
        ///</summary>
         [SugarColumn(ColumnName="FTERMINATEDATE"    )]
         public DateTime? Fterminatedate { get; set; }
    }
}
MES.Service/bin/Debug/net8.0/MES.Service.dll
Binary files differ
MES.Service/bin/Debug/net8.0/MES.Service.pdb
Binary files differ
MES.Service/bin/Release/net8.0/MES.Service.dll
Binary files differ
MES.Service/bin/Release/net8.0/MES.Service.pdb
Binary files differ
MES.Service/service/BOM/MesBomDetail1Manager.cs
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,78 @@
using SqlSugar;
using System;
using System.Collections.Generic;
using MES.Service.DB;
using MES.Service.Modes;
namespace MES.Service.service
{
public class MesBomDetail1Manager : Repository<MesBomDetail1>
{
    //当前类已经继承了 Repository å¢žã€åˆ ã€æŸ¥ã€æ”¹çš„æ–¹æ³•
    //这里面写的代码不会给覆盖,如果要重新生成请删除 MesBomDetail1Manager.cs
    #region æ•™å­¦æ–¹æ³•
    /// <summary>
    /// ä»“储方法满足不了复杂业务需求,业务代码请在这里面定义方法
    /// </summary>
    public void Study()
    {
       /*********查询*********/
        var data1 = base.GetById(1);//根据ID查询
        var data2 = base.GetList();//查询所有
        var data3 = base.GetList(it => 1 == 1);  //根据条件查询
        //var data4 = base.GetSingle(it => 1 == 1);//根据条件查询一条,如果超过一条会报错
        var p = new PageModel() { PageIndex = 1, PageSize = 2 };// åˆ†é¡µæŸ¥è¯¢
        var data5 = base.GetPageList(it => 1 == 1, p);
        Console.Write(p.TotalCount);//返回总数
        var data6 = base.GetPageList(it => 1 == 1, p, it => SqlFunc.GetRandom(), OrderByType.Asc);// åˆ†é¡µæŸ¥è¯¢åŠ æŽ’åº
        Console.Write(p.TotalCount);//返回总数
        List<IConditionalModel> conModels = new List<IConditionalModel>(); //组装条件查询作为条件实现 åˆ†é¡µæŸ¥è¯¢åŠ æŽ’åº
        conModels.Add(new ConditionalModel() { FieldName= typeof(MesBomDetail1).GetProperties()[0].Name, ConditionalType = ConditionalType.Equal, FieldValue = "1" });//id=1
        var data7 = base.GetPageList(conModels, p, it => SqlFunc.GetRandom(), OrderByType.Asc);
        base.AsQueryable().Where(x => 1 == 1).ToList();//支持了转换成queryable,我们可以用queryable实现复杂功能
        /*********插入*********/
        var insertData = new MesBomDetail1() { };//测试参数
        var insertArray = new MesBomDetail1[] { insertData };
        base.Insert(insertData);//插入
        base.InsertRange(insertArray);//批量插入
        var id = base.InsertReturnIdentity(insertData);//插入返回自增列
        base.AsInsertable(insertData).ExecuteCommand();//我们可以转成 Insertable实现复杂插入
        /*********更新*********/
        var updateData = new MesBomDetail1() {  };//测试参数
        var updateArray = new MesBomDetail1[] { updateData };//测试参数
        base.Update(updateData);//根据实体更新
        base.UpdateRange(updateArray);//批量更新
        //base.Update(it => new MesBomDetail1() { ClassName = "a", CreateTime = DateTime.Now }, it => it.id==1);// åªæ›´æ–°ClassName列和CreateTime列,其它列不更新,条件id=1
        base.AsUpdateable(updateData).ExecuteCommand();  //转成Updateable可以实现复杂的插入
        /*********删除*********/
        var deldata = new MesBomDetail1() {  };//测试参数
        base.Delete(deldata);//根据实体删除
        base.DeleteById(1);//根据主键删除
        base.DeleteById(new int[] { 1,2});//根据主键数组删除
        base.Delete(it=>1==2);//根据条件删除
        base.AsDeleteable().Where(it=>1==2).ExecuteCommand();//转成Deleteable实现复杂的操作
    }
    #endregion
 }
}
MES.Service/service/BOM/MesBomDetail2Manager.cs
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,78 @@
using SqlSugar;
using System;
using System.Collections.Generic;
using MES.Service.DB;
using MES.Service.Modes;
namespace MES.Service.service
{
public class MesBomDetail2Manager : Repository<MesBomDetail2>
{
    //当前类已经继承了 Repository å¢žã€åˆ ã€æŸ¥ã€æ”¹çš„æ–¹æ³•
    //这里面写的代码不会给覆盖,如果要重新生成请删除 MesBomDetail2Manager.cs
    #region æ•™å­¦æ–¹æ³•
    /// <summary>
    /// ä»“储方法满足不了复杂业务需求,业务代码请在这里面定义方法
    /// </summary>
    public void Study()
    {
       /*********查询*********/
        var data1 = base.GetById(1);//根据ID查询
        var data2 = base.GetList();//查询所有
        var data3 = base.GetList(it => 1 == 1);  //根据条件查询
        //var data4 = base.GetSingle(it => 1 == 1);//根据条件查询一条,如果超过一条会报错
        var p = new PageModel() { PageIndex = 1, PageSize = 2 };// åˆ†é¡µæŸ¥è¯¢
        var data5 = base.GetPageList(it => 1 == 1, p);
        Console.Write(p.TotalCount);//返回总数
        var data6 = base.GetPageList(it => 1 == 1, p, it => SqlFunc.GetRandom(), OrderByType.Asc);// åˆ†é¡µæŸ¥è¯¢åŠ æŽ’åº
        Console.Write(p.TotalCount);//返回总数
        List<IConditionalModel> conModels = new List<IConditionalModel>(); //组装条件查询作为条件实现 åˆ†é¡µæŸ¥è¯¢åŠ æŽ’åº
        conModels.Add(new ConditionalModel() { FieldName= typeof(MesBomDetail2).GetProperties()[0].Name, ConditionalType = ConditionalType.Equal, FieldValue = "1" });//id=1
        var data7 = base.GetPageList(conModels, p, it => SqlFunc.GetRandom(), OrderByType.Asc);
        base.AsQueryable().Where(x => 1 == 1).ToList();//支持了转换成queryable,我们可以用queryable实现复杂功能
        /*********插入*********/
        var insertData = new MesBomDetail2() { };//测试参数
        var insertArray = new MesBomDetail2[] { insertData };
        base.Insert(insertData);//插入
        base.InsertRange(insertArray);//批量插入
        var id = base.InsertReturnIdentity(insertData);//插入返回自增列
        base.AsInsertable(insertData).ExecuteCommand();//我们可以转成 Insertable实现复杂插入
        /*********更新*********/
        var updateData = new MesBomDetail2() {  };//测试参数
        var updateArray = new MesBomDetail2[] { updateData };//测试参数
        base.Update(updateData);//根据实体更新
        base.UpdateRange(updateArray);//批量更新
        //base.Update(it => new MesBomDetail2() { ClassName = "a", CreateTime = DateTime.Now }, it => it.id==1);// åªæ›´æ–°ClassName列和CreateTime列,其它列不更新,条件id=1
        base.AsUpdateable(updateData).ExecuteCommand();  //转成Updateable可以实现复杂的插入
        /*********删除*********/
        var deldata = new MesBomDetail2() {  };//测试参数
        base.Delete(deldata);//根据实体删除
        base.DeleteById(1);//根据主键删除
        base.DeleteById(new int[] { 1,2});//根据主键数组删除
        base.Delete(it=>1==2);//根据条件删除
        base.AsDeleteable().Where(it=>1==2).ExecuteCommand();//转成Deleteable实现复杂的操作
    }
    #endregion
 }
}
MES.Service/service/BOM/MesBomMasterManager.cs
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,260 @@
using SqlSugar;
using System;
using System.Collections.Generic;
using MES.Service.DB;
using MES.Service.Modes;
using MES.Service.Dto.service;
using System.Globalization;
namespace MES.Service.service
{
public class MesBomMasterManager : Repository<MesBomMaster>
{
        private readonly MesBomDetail1Manager MesBomDetail1Manager = new();
        private readonly MesBomDetail2Manager MesBomDetail2Manager = new();
        public bool Save(MesBomDto MesBom)
        {
            // var MesBomDto = MesBom.Main;
            var mesMesBom = ConvertErpToMesBom(MesBom);
            var mesMesBomDatas1 = ConvertErpToMesBomDetail1(MesBom);
            var mesMesBomDatas2 = ConvertErpToMesBomDetail2(MesBom);
            return UseTransaction(db =>
            {
                switch (MesBom.Type)
                {
                    // case "2":
                    //     return InsertData(db, mesSalesReturn, mesSalesReturnDatas,
                    //         rohInErpRohIn.FBILLTYPE)
                    //         ? 1
                    //         : 0;
                    case "3":
                        return UpdateData(db, mesMesBom, mesMesBomDatas1, mesMesBomDatas2) ? 1 : 0;
                    case "2":
                    case "4":
                        return SaveOrUpdateData(db, mesMesBom, mesMesBomDatas1, mesMesBomDatas2, MesBom.Type)
                            ? 1
                            : 0;
                    default:
                        throw new NotImplementedException(
                            $"type没有{MesBom.Type}这个类型");
                }
            }) > 0;
        }
        private bool UpdateData(SqlSugarScope db, MesBomMaster mesMesBom,
            List<MesBomDetail1> mesMesBomDatas1, List<MesBomDetail2> mesMesBomDatas2)
        {
            var decimals1 = mesMesBomDatas1.Select(s => s.Erpid).ToArray();
            var decimals2 = mesMesBomDatas2.Select(s => s.Erpid).ToArray();
            var update = base.DeleteById(mesMesBom.Erpid);
            var insertOrUpdate1 = db
                .Deleteable<MesBomDetail1>().In(decimals1)
                .ExecuteCommand() > 0;
            var insertOrUpdate2 = db
                .Deleteable<MesBomDetail2>().In(decimals2)
                .ExecuteCommand() > 0;
            if (update && insertOrUpdate1 && insertOrUpdate2) return true;
            throw new NotImplementedException("更新失败");
        }
        // æ’入或更新数据的方法
        private bool SaveOrUpdateData(SqlSugarScope db, MesBomMaster mesMesBom,
            List<MesBomDetail1> mesMesBomDatas1, List<MesBomDetail2> mesMesBomDatas2, string type)
        {
            if (mesMesBom.Erpid != null) base.DeleteById(mesMesBom.Erpid);
            if (mesMesBomDatas1.Count > 0)
                db.Deleteable<MesBomDetail1>()
                    .Where(s => s.Erphid == mesMesBom.Erpid).ExecuteCommand();
            if (mesMesBomDatas2.Count > 0)
                db.Deleteable<MesBomDetail2>()
                    .Where(s => s.Erphid == mesMesBom.Erpid).ExecuteCommand();
            //var orUpdate = base.Insert(mesMesBom);
            //var baOrUpdate = MesBomDetail1Manager.InsertRange(mesMesBomDatas1);
            //if (orUpdate && baOrUpdate) return true;
            var update_res = UseTransaction(db =>
            {
                db.Insertable(mesMesBom).ExecuteCommand();
                for (int i = 0; i < mesMesBomDatas1.Count; i++)
                {
                    var item = mesMesBomDatas1[i];
                    //item.PID = id;
                    db.Insertable(item).IgnoreColumns(true).ExecuteCommand();
                }
                for (int i = 0; i < mesMesBomDatas2.Count; i++)
                {
                    var item = mesMesBomDatas2[i];
                    //item.PID = id;
                    db.Insertable(item).IgnoreColumns(true).ExecuteCommand();
                }
                return 1;
            });
            if (update_res == 1) return true;
            throw new NotImplementedException("插入或更新失败");
        }
        // æ‰¹é‡ä¿å­˜è®°å½•的方法
        public bool SaveList(List<MesBomDto> MesBomOrder)
        {
            var result = MesBomOrder.Select(Save).ToList();
            return result.All(b => b);
        }
        private MesBomMaster ConvertErpToMesBom(
            MesBomDto erpDto)
        {
            DateTime parsedDate;
            var main = erpDto.Main;
            var MesBomOrder = new MesBomMaster
            {
                Erpid = main.Erpid,
                Fbilltype = main.Fbilltype,
                Fbomcategory = main.Fbomcategory,
                Fbomuse = main.Fbomuse,
                Fgroup = main.Fgroup,
                Fnumber = main.Fnumber,
                FUnwBomBb = main.FUnwBomBb,
                EffectiveDate = main.EffectiveDate,
                ExpirationDate = main.ExpirationDate,
                Fmaterialid = main.Fmaterialid,
                Fitemname = main.Fitemname,
                Fbaseunitid = main.Fbaseunitid,
                Fcreatorid = main.Fcreatorid,
                Fcreatedate = main.Fcreatedate,
                Fitempproperty = main.Fitempproperty,
                Fdescription = main.Fdescription,
                Fmodifierid = main.Fmodifierid,
                Fmodifydate = main.Fmodifydate,
                Fapproverid = main.Fapproverid,
                Fapprovedate = main.Fapprovedate,
                Fforbidreson = main.Fforbidreson,
                Fforbidstatus = main.Fforbidstatus,
                Fforbidderid = main.Fforbidderid,
                Fforbiddate = main.Fforbiddate,
                CreateOrganization = main.CreateOrganization,
                UsingOrganization = main.UsingOrganization,
                Routing = main.Routing,
                FUnwTextTpgy = main.FUnwTextTpgy,
                BomUpdateType = main.BomUpdateType
            };
            // var single = base.GetSingle(it => it.Erpid == main.Erpid);
            // if (single != null) MesBomOrder.Erpid = single.Erpid;
            return MesBomOrder;
        }
        private List<MesBomDetail1> ConvertErpToMesBomDetail1(
            MesBomDto erpDtoList)
        {
            var MesBomOrderSubList =
                new List<MesBomDetail1>();
            foreach (var erpDto in erpDtoList.DT1)
            {
                var MesBomOrderSub = new MesBomDetail1
                {
                    Erpid = erpDto.Erpid,
                    Erphid = erpDto.Erphid,
                    Freplacegroup = erpDto.Freplacegroup,
                    Fscraprate = erpDto.Fscraprate,
                    Fpositionno = erpDto.Fpositionno,
                    Fmaterialidchild = erpDto.Fmaterialidchild,
                    Fnumerator = erpDto.Fnumerator,
                    Fdenominator = erpDto.Fdenominator,
                    Fchilditemname = erpDto.Fchilditemname,
                    Fchilditemproperty = erpDto.Fchilditemproperty,
                    Fsupplytype = erpDto.Fsupplytype,
                    Fmaterialtype = erpDto.Fmaterialtype,
                    FUnwBzds1 = erpDto.FUnwBzds1,
                    Fchildunitid = erpDto.Fchildunitid,
                    Fdosagetype = erpDto.Fdosagetype,
                    Fbomid = erpDto.Fbomid,
                    Fmemo = erpDto.Fmemo,
                    Fstockid = erpDto.Fstockid,
                    Fisskip = erpDto.Fisskip,
                    Fismulcsd = erpDto.Fismulcsd,
                    Feffectdate = erpDto.Feffectdate,
                    Fexpiredate = erpDto.Fexpiredate,
                    Fissuetype = erpDto.Fissuetype,
                    Fnetdemandrate = erpDto.Fnetdemandrate,
                    FUnwTextTpgyZ = erpDto.FUnwTextTpgyZ,
                    Fbackflushtype = erpDto.Fbackflushtype,
                    Fovercontrolmode = erpDto.Fovercontrolmode,
                    Fbpminissueqty = erpDto.Fbpminissueqty,
                    Fisminissueqty = erpDto.Fisminissueqty,
                    Fisgetscrap = erpDto.Fisgetscrap,
                    Foptqueue = erpDto.Foptqueue,
                    Foperid = erpDto.Foperid,
                    Fprocessid = erpDto.Fprocessid,
                    FUnwJjds1 = erpDto.FUnwJjds1
                };
                var single = MesBomDetail1Manager.GetSingle(it =>
                    it.Erpid == MesBomOrderSub.Erpid);
                if (single != null) MesBomOrderSub.Erpid = single.Erpid;
                MesBomOrderSubList.Add(MesBomOrderSub);
            }
            return MesBomOrderSubList;
        }
        private List<MesBomDetail2> ConvertErpToMesBomDetail2(
            MesBomDto erpDtoList)
        {
            var MesBomOrderSubList =
                new List<MesBomDetail2>();
            foreach (var erpDto in erpDtoList.DT2)
            {
                var MesBomOrderSub = new MesBomDetail2
                {
                    Erpid = erpDto.Erpid,
                    Erphid = erpDto.Erphid,
                    Fstartqty = erpDto.Fstartqty,
                    Fendqty = erpDto.Fendqty,
                    Funitidlot = erpDto.Funitidlot,
                    Ffixscrapqtylot = erpDto.Ffixscrapqtylot,
                    Fscrapratelot = erpDto.Fscrapratelot,
                    Fnumeratorlot = erpDto.Fnumeratorlot,
                    Fdenominatorlot = erpDto.Fdenominatorlot,
                    Fmaterialidlotbased = erpDto.Fmaterialidlotbased,
                    LineNumber = erpDto.LineNumber
                };
                var single = MesBomDetail2Manager.GetSingle(it =>
                    it.Erpid == MesBomOrderSub.Erpid);
                if (single != null) MesBomOrderSub.Erpid = single.Erpid;
                MesBomOrderSubList.Add(MesBomOrderSub);
            }
            return MesBomOrderSubList;
        }
    }
}
MES.Service/service/MesCgsqDetailManager.cs
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,78 @@
using SqlSugar;
using System;
using System.Collections.Generic;
using MES.Service.DB;
using MES.Service.Modes;
namespace MES.Service.service
{
public class CgsqDetailManager : Repository<CgsqDetail>
{
    //当前类已经继承了 Repository å¢žã€åˆ ã€æŸ¥ã€æ”¹çš„æ–¹æ³•
    //这里面写的代码不会给覆盖,如果要重新生成请删除 CgsqDetailManager.cs
    #region æ•™å­¦æ–¹æ³•
    /// <summary>
    /// ä»“储方法满足不了复杂业务需求,业务代码请在这里面定义方法
    /// </summary>
    public void Study()
    {
       /*********查询*********/
        var data1 = base.GetById(1);//根据ID查询
        var data2 = base.GetList();//查询所有
        var data3 = base.GetList(it => 1 == 1);  //根据条件查询
        //var data4 = base.GetSingle(it => 1 == 1);//根据条件查询一条,如果超过一条会报错
        var p = new PageModel() { PageIndex = 1, PageSize = 2 };// åˆ†é¡µæŸ¥è¯¢
        var data5 = base.GetPageList(it => 1 == 1, p);
        Console.Write(p.TotalCount);//返回总数
        var data6 = base.GetPageList(it => 1 == 1, p, it => SqlFunc.GetRandom(), OrderByType.Asc);// åˆ†é¡µæŸ¥è¯¢åŠ æŽ’åº
        Console.Write(p.TotalCount);//返回总数
        List<IConditionalModel> conModels = new List<IConditionalModel>(); //组装条件查询作为条件实现 åˆ†é¡µæŸ¥è¯¢åŠ æŽ’åº
        conModels.Add(new ConditionalModel() { FieldName= typeof(CgsqDetail).GetProperties()[0].Name, ConditionalType = ConditionalType.Equal, FieldValue = "1" });//id=1
        var data7 = base.GetPageList(conModels, p, it => SqlFunc.GetRandom(), OrderByType.Asc);
        base.AsQueryable().Where(x => 1 == 1).ToList();//支持了转换成queryable,我们可以用queryable实现复杂功能
        /*********插入*********/
        var insertData = new CgsqDetail() { };//测试参数
        var insertArray = new CgsqDetail[] { insertData };
        base.Insert(insertData);//插入
        base.InsertRange(insertArray);//批量插入
        var id = base.InsertReturnIdentity(insertData);//插入返回自增列
        base.AsInsertable(insertData).ExecuteCommand();//我们可以转成 Insertable实现复杂插入
        /*********更新*********/
        var updateData = new CgsqDetail() {  };//测试参数
        var updateArray = new CgsqDetail[] { updateData };//测试参数
        base.Update(updateData);//根据实体更新
        base.UpdateRange(updateArray);//批量更新
        //base.Update(it => new CgsqDetail() { ClassName = "a", CreateTime = DateTime.Now }, it => it.id==1);// åªæ›´æ–°ClassName列和CreateTime列,其它列不更新,条件id=1
        base.AsUpdateable(updateData).ExecuteCommand();  //转成Updateable可以实现复杂的插入
        /*********删除*********/
        var deldata = new CgsqDetail() {  };//测试参数
        base.Delete(deldata);//根据实体删除
        base.DeleteById(1);//根据主键删除
        base.DeleteById(new int[] { 1,2});//根据主键数组删除
        base.Delete(it=>1==2);//根据条件删除
        base.AsDeleteable().Where(it=>1==2).ExecuteCommand();//转成Deleteable实现复杂的操作
    }
    #endregion
 }
}
MES.Service/service/MesCgsqManager.cs
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,218 @@
using SqlSugar;
using System;
using System.Collections.Generic;
using MES.Service.DB;
using MES.Service.Modes;
using MES.Service.Dto.webApi;
using System.Globalization;
using MES.Service.Dto.service;
namespace MES.Service.service
{
public class CgsqManager : Repository<Cgsq>
{
        private readonly CgsqDetailManager CgsqDetailManager = new();
        public bool Save(CgsqDto Cgsq)
        {
           // var CgsqDto = Cgsq.CgsqMain;
            var mesCgsq = ConvertErpToCgsq(Cgsq);
            var mesCgsqDatas = ConvertErpToCgsqDetail(Cgsq);
            return UseTransaction(db =>
            {
                switch (Cgsq.Type)
                {
                    // case "2":
                    //     return InsertData(db, mesSalesReturn, mesSalesReturnDatas,
                    //         rohInErpRohIn.FBILLTYPE)
                    //         ? 1
                    //         : 0;
                    case "3":
                        return UpdateData(db, mesCgsq, mesCgsqDatas) ? 1 : 0;
                    case "2":
                    case "4":
                        return SaveOrUpdateData(db, mesCgsq, mesCgsqDatas, Cgsq.Type)
                            ? 1
                            : 0;
                    default:
                        throw new NotImplementedException(
                            $"type没有{Cgsq.Type}这个类型");
                }
            }) > 0;
        }
        private bool UpdateData(SqlSugarScope db, Cgsq mesCgsq,
            List<CgsqDetail> mesCgsqDatas)
        {
            var decimals = mesCgsqDatas.Select(s => s.ERPID).ToArray();
            var update = base.DeleteById(mesCgsq.ERPID);
            var insertOrUpdate = db
                .Deleteable<CgsqDetail>().In(decimals)
                .ExecuteCommand() > 0;
            if (update && insertOrUpdate) return true;
            throw new NotImplementedException("更新失败");
        }
        // æ’入或更新数据的方法
        private bool SaveOrUpdateData(SqlSugarScope db, Cgsq mesCgsq,
            List<CgsqDetail> mesCgsqDatas, string type)
        {
            if (mesCgsq.ERPID != null) base.DeleteById(mesCgsq.ERPID);
            if (mesCgsqDatas.Count > 0)
                db.Deleteable<CgsqDetail>()
                    .Where(s => s.ERPHID == mesCgsq.ERPID).ExecuteCommand();
            //var orUpdate = base.Insert(mesCgsq);
            //var baOrUpdate = CgsqDetailManager.InsertRange(mesCgsqDatas);
            //if (orUpdate && baOrUpdate) return true;
            var update_res = UseTransaction(db =>
            {
                db.Insertable(mesCgsq).ExecuteCommand();
                for (int i = 0; i < mesCgsqDatas.Count; i++)
                {
                    var item = mesCgsqDatas[i];
                    //item.PID = id;
                    db.Insertable(item).IgnoreColumns(true).ExecuteCommand();
                }
                return 1;
            });
            if (update_res == 1) return true;
            throw new NotImplementedException("插入或更新失败");
        }
        // æ‰¹é‡ä¿å­˜è®°å½•的方法
        public bool SaveList(List<CgsqDto> CgsqOrder)
        {
            var result = CgsqOrder.Select(Save).ToList();
            return result.All(b => b);
        }
        private Cgsq ConvertErpToCgsq(
            CgsqDto erpDto)
        {
            DateTime parsedDate;
            // æ—¶é—´æ ¼å¼è½¬æ¢å‡½æ•°ï¼ŒERP时间格式为 "yyyy-MM-dd HH:mm:ss"
            DateTime? ParseDateTime(string dateStr)
            {
                if (DateTime.TryParseExact(dateStr, "yyyy-MM-dd HH:mm:ss",
                        CultureInfo.InvariantCulture,
                        DateTimeStyles.None,
                        out parsedDate))
                    return parsedDate;
                return null; // å¦‚果转换失败,返回null
            }
            var main = erpDto.CgsqMain;
            var CgsqOrder = new Cgsq
            {
                ERPID=main.ERPID,
                Fbilltypeid = main.Fbilltypeid,
                Fbillno = main.Fbillno,
                Fapplicationdate = main.Fapplicationdate,
                Frequesttype = main.Frequesttype,
                FUnwComboZjmj = main.FUnwComboZjmj,
                ApplyingOrganizationId = main.ApplyingOrganizationId,
                Fapplicationdeptid = main.Fapplicationdeptid,
                Fapplicantid = main.Fapplicantid,
                Fcurrencyid = main.Fcurrencyid,
                Facctype = main.Facctype,
                Fdocumentstatus = main.Fdocumentstatus,
                Fnote = main.Fnote,
                Fcreatorid = main.Fcreatorid,
                Fcreatedate = main.Fcreatedate,
                Fapproverid = main.Fapproverid,
                Fapprovedate = main.Fapprovedate,
                Fclosestatus = main.Fclosestatus,
                Fclosedate = main.Fclosedate,
                Fcloserid = main.Fcloserid,
                Fclosereason = main.Fclosereason,
                Fmodifierid = main.Fmodifierid,
                Fmodifydate = main.Fmodifydate,
                Fmanualclose = main.Fmanualclose
            };
           // var single = base.GetSingle(it => it.ERPID == main.ERPID);
           // if (single != null) CgsqOrder.ERPID = single.ERPID;
            return CgsqOrder;
        }
        private List<CgsqDetail> ConvertErpToCgsqDetail(
            CgsqDto erpDtoList)
        {
            var CgsqOrderSubList =
                new List<CgsqDetail>();
            DateTime parsedDate;
            // æ—¶é—´æ ¼å¼è½¬æ¢å‡½æ•°ï¼ŒERP时间格式为 "yyyy-MM-dd HH:mm:ss"
            DateTime? ParseDateTime(string dateStr)
            {
                if (DateTime.TryParseExact(dateStr, "yyyy-MM-dd HH:mm:ss",
                        CultureInfo.InvariantCulture,
                        DateTimeStyles.None,
                        out parsedDate))
                    return parsedDate;
                return null; // å¦‚果转换失败,返回null
            }
            foreach (var erpDto in erpDtoList.CgsqDT)
            {
                var CgsqOrderSub = new CgsqDetail
                {
                    ERPID = erpDto.ERPID,
                    ERPHID = erpDto.ERPHID,
                    LineNumber = erpDto.LineNumber,
                    FUnwTextXsddh = erpDto.FUnwTextXsddh,
                    OwnerOrganizationId = erpDto.OwnerOrganizationId,
                    Fmaterialid = erpDto.Fmaterialid,
                    Fmaterialmodel = erpDto.Fmaterialmodel,
                    Fmaterialname = erpDto.Fmaterialname,
                    Funitid = erpDto.Funitid,
                    Freqqty = erpDto.Freqqty,
                    Fapproveqty = erpDto.Fapproveqty,
                    Farrivaldate = erpDto.Farrivaldate,
                    Fsuggestpurdate = erpDto.Fsuggestpurdate,
                    BuyerOrganizationId = erpDto.BuyerOrganizationId,
                    Fsuggestsupplierid = erpDto.Fsuggestsupplierid,
                    WarehouseId = erpDto.WarehouseId,
                    Freqstockunitid = erpDto.Freqstockunitid,
                    Freqstockqty = erpDto.Freqstockqty,
                    Fpriceunitid = erpDto.Fpriceunitid,
                    Fpriceunitqty = erpDto.Fpriceunitqty,
                    Fleadtime = erpDto.Fleadtime,
                    Fmtono = erpDto.Fmtono,
                    Freqtraceno = erpDto.Freqtraceno,
                    Fdemandbillno = erpDto.Fdemandbillno,
                    Fdemandbillentryseq = erpDto.Fdemandbillentryseq,
                    Fmrpterminatestatus = erpDto.Fmrpterminatestatus,
                    Fterminaterid = erpDto.Fterminaterid,
                    Fterminatedate = erpDto.Fterminatedate
                };
                var single = CgsqDetailManager.GetSingle(it =>
                    it.ERPID == CgsqOrderSub.ERPID);
                if (single != null) CgsqOrderSub.ERPID = single.ERPID;
                CgsqOrderSubList.Add(CgsqOrderSub);
            }
            return CgsqOrderSubList;
        }
    }
}
MESApplication/Controllers/BOM/MesBomMasterController.cs
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,268 @@
using Microsoft.AspNetCore.Mvc;
using Microsoft.Extensions.Logging;
using SqlSugar;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
using System.Dynamic;
using MES.Service.Modes;
using MES.Service.service;
using MES.Service.util;
using MES.Service.Dto.service;
using Newtonsoft.Json;
namespace MESApplication.Controllers
{
    [ApiController]
    [Route("api/[controller]")]
    public class MesBomMasterController : ControllerBase
    {
        private MesBomMasterManager m = new MesBomMasterManager();
        private readonly MessageCenterManager _manager = new();
        private readonly string METHOD = "POST";
        private readonly string TableName = "MesBomMaster";
        private readonly string URL = "http://localhost:10054/api/MesBomMaster/";
        /***进入模版管理可以修改模版***/
        [HttpPost("Save")]
        public ResponseResult Save(MesBomDto MesBomOrder)
        {
            var entity = new MessageCenter();
            entity.TableName = TableName;
            entity.Url = URL + "Save";
            entity.Method = METHOD;
            entity.Data = JsonConvert.SerializeObject(MesBomOrder);
            entity.Status = 1;
            entity.CreateBy = "PL017";
            try
            {
                dynamic resultInfos = new ExpandoObject();
                var save = m.Save(MesBomOrder);
                resultInfos.tbBillList = save;
                entity.Result = 0;
                if (save) entity.Result = 1;
                entity.DealWith = 1;
                _manager.save(entity);
                return new ResponseResult
                {
                    status = 0,
                    message = "OK",
                    data = resultInfos
                };
            }
            catch (Exception ex)
            {
                entity.Result = 0;
                entity.DealWith = 0;
                entity.ResultData = ex.Message;
                _manager.save(entity);
                return ResponseResult.ResponseError(ex);
            }
        }
        [HttpPost("SaveList")]
        public ResponseResult SaveList(List<MesBomDto> units)
        {
            var entity = new MessageCenter();
            entity.TableName = TableName;
            entity.Url = URL + "SaveList";
            entity.Method = METHOD;
            entity.Data = JsonConvert.SerializeObject(units);
            entity.Status = 1;
            entity.CreateBy = "PL017";
            try
            {
                dynamic resultInfos = new ExpandoObject();
                var save = m.SaveList(units);
                resultInfos.tbBillList = save;
                entity.Result = 0;
                if (save) entity.Result = 1;
                entity.DealWith = 1;
                _manager.save(entity);
                return new ResponseResult
                {
                    status = 0,
                    message = "OK",
                    data = resultInfos
                };
            }
            catch (Exception ex)
            {
                entity.Result = 0;
                entity.DealWith = 0;
                entity.ResultData = ex.Message;
                _manager.save(entity);
                return ResponseResult.ResponseError(ex);
            }
        }
        /***进入模版管理可以修改模版***/
        /// <summary>
        /// èŽ·å–æ‰€æœ‰
        /// </summary>
        /// <returns></returns>
        [HttpPost("GetList")]
        public ResponseResult GetList()
        {
            try
            {
                dynamic resultInfos = new ExpandoObject();
                resultInfos.tbBillList = m.GetList();
                return new ResponseResult
                {
                    status = 0,
                    message = "OK",
                    data = resultInfos
                };
            }
            catch (Exception ex)
            {
                return ResponseResult.ResponseError(ex);
            }
        }
        /// <summary>
        /// æ ¹æ®ä¸»é”®èŽ·å–
        /// </summary>
        /// <returns></returns>
        [HttpPost("GetById")]
        public ResponseResult GetById(int id)
        {
            try
            {
                dynamic resultInfos = new ExpandoObject();
                resultInfos.tbBillList = m.GetById(id);
                return new ResponseResult
                {
                    status = 0,
                    message = "OK",
                    data = resultInfos
                };
            }
            catch (Exception ex)
            {
                return ResponseResult.ResponseError(ex);
            }
        }
        /// <summary>
        /// æ ¹æ®ä¸»é”®åˆ é™¤
        /// </summary>
        /// <returns></returns>
        [HttpPost("DeleteByIds")]
        public ResponseResult DeleteByIds([FromBody] object[] ids)
        {
            try
            {
                dynamic resultInfos = new ExpandoObject();
                resultInfos.tbBillList = m.DeleteByIds(ids);
                return new ResponseResult
                {
                    status = 0,
                    message = "OK",
                    data = resultInfos
                };
            }
            catch (Exception ex)
            {
                return ResponseResult.ResponseError(ex);
            }
        }
        /// <summary>
        /// æ·»åŠ 
        /// </summary>
        /// <returns></returns>
        [HttpPost("Insert")]
        public ResponseResult Add([FromBody] MesBomMaster data)
        {
            try
            {
                dynamic resultInfos = new ExpandoObject();
                resultInfos.tbBillList = m.Insert(data);
                return new ResponseResult
                {
                    status = 0,
                    message = "OK",
                    data = resultInfos
                };
            }
            catch (Exception ex)
            {
                return ResponseResult.ResponseError(ex);
            }
        }
        /// <summary>
        /// æ·»åŠ è¿”å›žè‡ªå¢ž
        /// </summary>
        /// <returns></returns>
        [HttpPost("InsertReturnIdentity")]
        public ResponseResult InsertReturnIdentity([FromBody] MesBomMaster data)
        {
            try
            {
                dynamic resultInfos = new ExpandoObject();
                resultInfos.tbBillList = m.InsertReturnIdentity(data);
                return new ResponseResult
                {
                    status = 0,
                    message = "OK",
                    data = resultInfos
                };
            }
            catch (Exception ex)
            {
                return ResponseResult.ResponseError(ex);
            }
        }
        /// <summary>
        /// ä¿®æ”¹
        /// </summary>
        /// <returns></returns>
        [HttpPost("Update")]
        public ResponseResult Update([FromBody] MesBomMaster data)
        {
            try
            {
                dynamic resultInfos = new ExpandoObject();
                resultInfos.tbBillList = m.Update(data);
                return new ResponseResult
                {
                    status = 0,
                    message = "OK",
                    data = resultInfos
                };
            }
            catch (Exception ex)
            {
                return ResponseResult.ResponseError(ex);
            }
        }
    }
}
MESApplication/Controllers/MesCgsqController.cs
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,267 @@
using Microsoft.AspNetCore.Mvc;
using Microsoft.Extensions.Logging;
using SqlSugar;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
using System.Dynamic;
using MES.Service.Modes;
using MES.Service.service;
using MES.Service.util;
using MES.Service.service.BasicData;
using MES.Service.Dto.webApi;
using Newtonsoft.Json;
using MES.Service.Dto.service;
namespace MESApplication.Controllers
{
    [ApiController]
    [Route("api/[controller]")]
    public class CgsqController : ControllerBase
    {
        private CgsqManager m = new CgsqManager();
        private readonly MessageCenterManager _manager = new();
        private readonly string METHOD = "POST";
        private readonly string TableName = "MES_CGSQ";
        private readonly string URL = "http://localhost:10054/api/CGSQ/";
        /***进入模版管理可以修改模版***/
        [HttpPost("Save")]
        public ResponseResult Save(CgsqDto CgsqOrder)
        {
            var entity = new MessageCenter();
            entity.TableName = TableName;
            entity.Url = URL + "Save";
            entity.Method = METHOD;
            entity.Data = JsonConvert.SerializeObject(CgsqOrder);
            entity.Status = 1;
            entity.CreateBy = "PL017";
            try
            {
                dynamic resultInfos = new ExpandoObject();
                var save = m.Save(CgsqOrder);
                resultInfos.tbBillList = save;
                entity.Result = 0;
                if (save) entity.Result = 1;
                entity.DealWith = 1;
                _manager.save(entity);
                return new ResponseResult
                {
                    status = 0,
                    message = "OK",
                    data = resultInfos
                };
            }
            catch (Exception ex)
            {
                entity.Result = 0;
                entity.DealWith = 0;
                entity.ResultData = ex.Message;
                _manager.save(entity);
                return ResponseResult.ResponseError(ex);
            }
        }
        [HttpPost("SaveList")]
        public ResponseResult SaveList(List<CgsqDto> units)
        {
            var entity = new MessageCenter();
            entity.TableName = TableName;
            entity.Url = URL + "SaveList";
            entity.Method = METHOD;
            entity.Data = JsonConvert.SerializeObject(units);
            entity.Status = 1;
            entity.CreateBy = "PL017";
            try
            {
                dynamic resultInfos = new ExpandoObject();
                var save = m.SaveList(units);
                resultInfos.tbBillList = save;
                entity.Result = 0;
                if (save) entity.Result = 1;
                entity.DealWith = 1;
                _manager.save(entity);
                return new ResponseResult
                {
                    status = 0,
                    message = "OK",
                    data = resultInfos
                };
            }
            catch (Exception ex)
            {
                entity.Result = 0;
                entity.DealWith = 0;
                entity.ResultData = ex.Message;
                _manager.save(entity);
                return ResponseResult.ResponseError(ex);
            }
        }
        /// <summary>
        /// èŽ·å–æ‰€æœ‰
        /// </summary>
        /// <returns></returns>
        [HttpPost("GetList")]
        public ResponseResult GetList()
        {
            try
            {
                dynamic resultInfos = new ExpandoObject();
                resultInfos.tbBillList = m.GetList();
                return new ResponseResult
                {
                    status = 0,
                    message = "OK",
                    data = resultInfos
                };
            }
            catch (Exception ex)
            {
                return ResponseResult.ResponseError(ex);
            }
        }
        /// <summary>
        /// æ ¹æ®ä¸»é”®èŽ·å–
        /// </summary>
        /// <returns></returns>
        [HttpPost("GetById")]
        public ResponseResult GetById(int id)
        {
            try
            {
                dynamic resultInfos = new ExpandoObject();
                resultInfos.tbBillList = m.GetById(id);
                return new ResponseResult
                {
                    status = 0,
                    message = "OK",
                    data = resultInfos
                };
            }
            catch (Exception ex)
            {
                return ResponseResult.ResponseError(ex);
            }
        }
        /// <summary>
        /// æ ¹æ®ä¸»é”®åˆ é™¤
        /// </summary>
        /// <returns></returns>
        [HttpPost("DeleteByIds")]
        public ResponseResult DeleteByIds([FromBody] object[] ids)
        {
            try
            {
                dynamic resultInfos = new ExpandoObject();
                resultInfos.tbBillList = m.DeleteByIds(ids);
                return new ResponseResult
                {
                    status = 0,
                    message = "OK",
                    data = resultInfos
                };
            }
            catch (Exception ex)
            {
                return ResponseResult.ResponseError(ex);
            }
        }
        /// <summary>
        /// æ·»åŠ 
        /// </summary>
        /// <returns></returns>
        [HttpPost("Insert")]
        public ResponseResult Add([FromBody] Cgsq data)
        {
            try
            {
                dynamic resultInfos = new ExpandoObject();
                resultInfos.tbBillList = m.Insert(data);
                return new ResponseResult
                {
                    status = 0,
                    message = "OK",
                    data = resultInfos
                };
            }
            catch (Exception ex)
            {
                return ResponseResult.ResponseError(ex);
            }
        }
        /// <summary>
        /// æ·»åŠ è¿”å›žè‡ªå¢ž
        /// </summary>
        /// <returns></returns>
        [HttpPost("InsertReturnIdentity")]
        public ResponseResult InsertReturnIdentity([FromBody] Cgsq data)
        {
            try
            {
                dynamic resultInfos = new ExpandoObject();
                resultInfos.tbBillList = m.InsertReturnIdentity(data);
                return new ResponseResult
                {
                    status = 0,
                    message = "OK",
                    data = resultInfos
                };
            }
            catch (Exception ex)
            {
                return ResponseResult.ResponseError(ex);
            }
        }
        /// <summary>
        /// ä¿®æ”¹
        /// </summary>
        /// <returns></returns>
        [HttpPost("Update")]
        public ResponseResult Update([FromBody] Cgsq data)
        {
            try
            {
                dynamic resultInfos = new ExpandoObject();
                resultInfos.tbBillList = m.Update(data);
                return new ResponseResult
                {
                    status = 0,
                    message = "OK",
                    data = resultInfos
                };
            }
            catch (Exception ex)
            {
                return ResponseResult.ResponseError(ex);
            }
        }
    }
}
MESApplication/MESApplication.csproj.user
@@ -5,6 +5,6 @@
  </PropertyGroup>
  <PropertyGroup>
    <ActiveDebugProfile>IIS Express</ActiveDebugProfile>
    <NameOfLastUsedPublishProfile>E:\Tool\SG\StandardPda\MESApplication\Properties\PublishProfiles\FolderProfile.pubxml</NameOfLastUsedPublishProfile>
    <NameOfLastUsedPublishProfile>C:\Users\qewqer\Desktop\MES\SG\StandardPda\MESApplication\Properties\PublishProfiles\FolderProfile.pubxml</NameOfLastUsedPublishProfile>
  </PropertyGroup>
</Project>
MESApplication/Properties/PublishProfiles/FolderProfile.pubxml.user
@@ -4,8 +4,8 @@
-->
<Project>
  <PropertyGroup>
    <_PublishTargetUrl>E:\Tool\SG\StandardPda\MESApplication\bin\Release\net8.0\publish\</_PublishTargetUrl>
    <History>True|2025-04-21T04:10:43.8803364Z||;True|2025-04-21T08:27:37.2394337+08:00||;True|2025-04-12T12:05:38.9937329+08:00||;True|2025-04-11T16:26:37.5266569+08:00||;True|2025-03-20T17:58:14.2077893+08:00||;True|2025-03-15T00:59:39.9999573+08:00||;True|2025-03-07T15:42:21.8276566+08:00||;True|2025-02-27T10:43:45.2314689+08:00||;True|2025-02-21T16:39:35.2452658+08:00||;True|2025-01-13T15:35:48.6521519+08:00||;True|2025-01-08T16:15:03.8764923+08:00||;True|2024-12-30T15:00:59.8090011+08:00||;True|2024-12-06T16:11:01.2090466+08:00||;True|2024-11-26T09:07:33.5654976+08:00||;True|2024-11-20T15:49:27.1100474+08:00||;True|2024-11-16T18:18:42.4224922+08:00||;True|2024-11-15T09:32:12.6287354+08:00||;True|2024-11-13T10:19:32.3283327+08:00||;True|2024-09-06T14:40:56.3762241+08:00||;True|2024-08-20T17:12:00.2924570+08:00||;True|2024-08-17T10:57:05.6670396+08:00||;True|2024-08-17T10:56:46.8068041+08:00||;True|2024-08-16T14:09:17.0526491+08:00||;True|2024-08-15T08:40:32.8134665+08:00||;True|2024-08-14T10:00:27.7017207+08:00||;True|2024-08-14T08:54:44.8284031+08:00||;True|2024-08-07T10:32:10.3689256+08:00||;True|2024-08-05T15:45:03.0864530+08:00||;True|2024-08-03T09:59:13.7916520+08:00||;True|2024-07-31T17:27:28.1965929+08:00||;True|2024-07-31T15:27:34.7943845+08:00||;True|2024-07-30T15:04:50.5849235+08:00||;True|2024-07-30T14:09:06.2877325+08:00||;True|2024-07-29T16:11:30.4493940+08:00||;True|2024-07-23T14:30:34.4591002+08:00||;True|2024-07-22T14:17:39.8186158+08:00||;True|2024-04-10T12:55:31.3963752+08:00||;True|2024-04-08T13:59:25.5487203+08:00||;True|2024-04-06T09:30:09.5350539+08:00||;True|2024-04-06T08:46:05.8814658+08:00||;True|2024-04-05T14:06:52.0448024+08:00||;True|2024-04-05T12:47:46.0561601+08:00||;True|2024-02-26T08:46:22.0988887+08:00||;True|2024-02-24T19:17:13.6770376+08:00||;True|2024-02-24T14:32:37.4450337+08:00||;True|2024-02-23T10:22:06.5150173+08:00||;True|2024-02-22T13:19:56.6997993+08:00||;True|2024-02-22T10:53:17.7929585+08:00||;True|2024-02-21T17:08:06.5553444+08:00||;True|2024-02-19T16:24:37.4912012+08:00||;True|2024-02-02T10:07:23.2726075+08:00||;True|2024-02-02T08:36:49.2904460+08:00||;True|2024-01-29T17:44:43.6800769+08:00||;True|2024-01-23T09:47:26.7811926+08:00||;True|2024-01-18T16:23:30.3373836+08:00||;True|2024-01-17T14:22:04.2552286+08:00||;True|2024-01-16T16:54:42.2316892+08:00||;True|2024-01-16T16:37:23.8028858+08:00||;True|2024-01-16T09:25:24.4007775+08:00||;True|2024-01-15T10:18:57.3362616+08:00||;True|2024-01-15T10:07:14.2044763+08:00||;True|2024-01-10T14:03:36.4451130+08:00||;True|2024-01-09T16:45:32.9601815+08:00||;True|2024-01-06T14:16:34.2732220+08:00||;True|2024-01-06T14:11:45.2134717+08:00||;True|2024-01-06T11:30:58.9198887+08:00||;</History>
    <_PublishTargetUrl>C:\Users\qewqer\Desktop\MES\SG\StandardPda\MESApplication\bin\Release\net8.0\publish\</_PublishTargetUrl>
    <History>True|2025-05-07T01:38:52.4250140Z||;True|2025-04-21T12:10:43.8803364+08:00||;True|2025-04-21T08:27:37.2394337+08:00||;True|2025-04-12T12:05:38.9937329+08:00||;True|2025-04-11T16:26:37.5266569+08:00||;True|2025-03-20T17:58:14.2077893+08:00||;True|2025-03-15T00:59:39.9999573+08:00||;True|2025-03-07T15:42:21.8276566+08:00||;True|2025-02-27T10:43:45.2314689+08:00||;True|2025-02-21T16:39:35.2452658+08:00||;True|2025-01-13T15:35:48.6521519+08:00||;True|2025-01-08T16:15:03.8764923+08:00||;True|2024-12-30T15:00:59.8090011+08:00||;True|2024-12-06T16:11:01.2090466+08:00||;True|2024-11-26T09:07:33.5654976+08:00||;True|2024-11-20T15:49:27.1100474+08:00||;True|2024-11-16T18:18:42.4224922+08:00||;True|2024-11-15T09:32:12.6287354+08:00||;True|2024-11-13T10:19:32.3283327+08:00||;True|2024-09-06T14:40:56.3762241+08:00||;True|2024-08-20T17:12:00.2924570+08:00||;True|2024-08-17T10:57:05.6670396+08:00||;True|2024-08-17T10:56:46.8068041+08:00||;True|2024-08-16T14:09:17.0526491+08:00||;True|2024-08-15T08:40:32.8134665+08:00||;True|2024-08-14T10:00:27.7017207+08:00||;True|2024-08-14T08:54:44.8284031+08:00||;True|2024-08-07T10:32:10.3689256+08:00||;True|2024-08-05T15:45:03.0864530+08:00||;True|2024-08-03T09:59:13.7916520+08:00||;True|2024-07-31T17:27:28.1965929+08:00||;True|2024-07-31T15:27:34.7943845+08:00||;True|2024-07-30T15:04:50.5849235+08:00||;True|2024-07-30T14:09:06.2877325+08:00||;True|2024-07-29T16:11:30.4493940+08:00||;True|2024-07-23T14:30:34.4591002+08:00||;True|2024-07-22T14:17:39.8186158+08:00||;True|2024-04-10T12:55:31.3963752+08:00||;True|2024-04-08T13:59:25.5487203+08:00||;True|2024-04-06T09:30:09.5350539+08:00||;True|2024-04-06T08:46:05.8814658+08:00||;True|2024-04-05T14:06:52.0448024+08:00||;True|2024-04-05T12:47:46.0561601+08:00||;True|2024-02-26T08:46:22.0988887+08:00||;True|2024-02-24T19:17:13.6770376+08:00||;True|2024-02-24T14:32:37.4450337+08:00||;True|2024-02-23T10:22:06.5150173+08:00||;True|2024-02-22T13:19:56.6997993+08:00||;True|2024-02-22T10:53:17.7929585+08:00||;True|2024-02-21T17:08:06.5553444+08:00||;True|2024-02-19T16:24:37.4912012+08:00||;True|2024-02-02T10:07:23.2726075+08:00||;True|2024-02-02T08:36:49.2904460+08:00||;True|2024-01-29T17:44:43.6800769+08:00||;True|2024-01-23T09:47:26.7811926+08:00||;True|2024-01-18T16:23:30.3373836+08:00||;True|2024-01-17T14:22:04.2552286+08:00||;True|2024-01-16T16:54:42.2316892+08:00||;True|2024-01-16T16:37:23.8028858+08:00||;True|2024-01-16T09:25:24.4007775+08:00||;True|2024-01-15T10:18:57.3362616+08:00||;True|2024-01-15T10:07:14.2044763+08:00||;True|2024-01-10T14:03:36.4451130+08:00||;True|2024-01-09T16:45:32.9601815+08:00||;True|2024-01-06T14:16:34.2732220+08:00||;True|2024-01-06T14:11:45.2134717+08:00||;True|2024-01-06T11:30:58.9198887+08:00||;</History>
    <LastFailureDetails />
  </PropertyGroup>
</Project>
MESApplication/bin/Debug/net8.0/MES.Service.dll
Binary files differ
MESApplication/bin/Debug/net8.0/MES.Service.pdb
Binary files differ
MESApplication/bin/Debug/net8.0/MESApplication.dll
Binary files differ
MESApplication/bin/Debug/net8.0/MESApplication.exe
Binary files differ
MESApplication/bin/Debug/net8.0/MESApplication.pdb
Binary files differ
MESApplication/bin/Debug/net8.0/MESApplication.xml
@@ -858,6 +858,78 @@
            </summary>
            <returns></returns>
        </member>
        <member name="M:MESApplication.Controllers.MesBomMasterController.GetList">
            <summary>
            èŽ·å–æ‰€æœ‰
            </summary>
            <returns></returns>
        </member>
        <member name="M:MESApplication.Controllers.MesBomMasterController.GetById(System.Int32)">
            <summary>
            æ ¹æ®ä¸»é”®èŽ·å–
            </summary>
            <returns></returns>
        </member>
        <member name="M:MESApplication.Controllers.MesBomMasterController.DeleteByIds(System.Object[])">
            <summary>
            æ ¹æ®ä¸»é”®åˆ é™¤
            </summary>
            <returns></returns>
        </member>
        <member name="M:MESApplication.Controllers.MesBomMasterController.Add(MES.Service.Modes.MesBomMaster)">
            <summary>
            æ·»åŠ 
            </summary>
            <returns></returns>
        </member>
        <member name="M:MESApplication.Controllers.MesBomMasterController.InsertReturnIdentity(MES.Service.Modes.MesBomMaster)">
            <summary>
            æ·»åŠ è¿”å›žè‡ªå¢ž
            </summary>
            <returns></returns>
        </member>
        <member name="M:MESApplication.Controllers.MesBomMasterController.Update(MES.Service.Modes.MesBomMaster)">
            <summary>
            ä¿®æ”¹
            </summary>
            <returns></returns>
        </member>
        <member name="M:MESApplication.Controllers.CgsqController.GetList">
            <summary>
            èŽ·å–æ‰€æœ‰
            </summary>
            <returns></returns>
        </member>
        <member name="M:MESApplication.Controllers.CgsqController.GetById(System.Int32)">
            <summary>
            æ ¹æ®ä¸»é”®èŽ·å–
            </summary>
            <returns></returns>
        </member>
        <member name="M:MESApplication.Controllers.CgsqController.DeleteByIds(System.Object[])">
            <summary>
            æ ¹æ®ä¸»é”®åˆ é™¤
            </summary>
            <returns></returns>
        </member>
        <member name="M:MESApplication.Controllers.CgsqController.Add(MES.Service.Modes.Cgsq)">
            <summary>
            æ·»åŠ 
            </summary>
            <returns></returns>
        </member>
        <member name="M:MESApplication.Controllers.CgsqController.InsertReturnIdentity(MES.Service.Modes.Cgsq)">
            <summary>
            æ·»åŠ è¿”å›žè‡ªå¢ž
            </summary>
            <returns></returns>
        </member>
        <member name="M:MESApplication.Controllers.CgsqController.Update(MES.Service.Modes.Cgsq)">
            <summary>
            ä¿®æ”¹
            </summary>
            <returns></returns>
        </member>
        <member name="M:MESApplication.Controllers.MesRfPrnbarcodeController.GetList">
            <summary>
                èŽ·å–æ‰€æœ‰
MESApplication/bin/Release/net8.0/MES.Service.dll
Binary files differ
MESApplication/bin/Release/net8.0/MES.Service.pdb
Binary files differ
MESApplication/bin/Release/net8.0/MESApplication.deps.json
@@ -1629,10 +1629,7 @@
          "SqlSugarCore": "5.1.4.169"
        },
        "runtime": {
          "MES.Service.dll": {
            "assemblyVersion": "1.0.0",
            "fileVersion": "1.0.0.0"
          }
          "MES.Service.dll": {}
        }
      },
      "Kingdee.CDP.WebApi.SDK/8.0.6.0": {
MESApplication/bin/Release/net8.0/MESApplication.dll
Binary files differ
MESApplication/bin/Release/net8.0/MESApplication.exe
Binary files differ
MESApplication/bin/Release/net8.0/MESApplication.pdb
Binary files differ
MESApplication/bin/Release/net8.0/publish/MES.Service.dll
Binary files differ
MESApplication/bin/Release/net8.0/publish/MES.Service.pdb
Binary files differ
MESApplication/bin/Release/net8.0/publish/MESApplication.deps.json
@@ -1384,10 +1384,7 @@
          "SqlSugarCore": "5.1.4.169"
        },
        "runtime": {
          "MES.Service.dll": {
            "assemblyVersion": "1.0.0",
            "fileVersion": "1.0.0.0"
          }
          "MES.Service.dll": {}
        }
      },
      "Kingdee.CDP.WebApi.SDK/8.0.6.0": {
MESApplication/bin/Release/net8.0/publish/MESApplication.dll
Binary files differ
MESApplication/bin/Release/net8.0/publish/MESApplication.exe
Binary files differ
MESApplication/bin/Release/net8.0/publish/MESApplication.pdb
Binary files differ