zyf
2025-01-14 49c8ac08b9e1a29d24266aef39af9519b792feae
接收ERP其他出库订单,新增销售订单客户物料信息字段
已修改30个文件
已添加7个文件
656 ■■■■■ 文件已修改
MES.Service/Dto/webApi/ErpQTCK.cs 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
MES.Service/Dto/webApi/ErpQTCKDetailDto.cs 25 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
MES.Service/Dto/webApi/ErpQTCKDto.cs 27 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
MES.Service/Dto/webApi/ErpSalesDeliveryDetailDto.cs 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
MES.Service/Dto/webApi/ErpSalesOrdeDetailDto.cs 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
MES.Service/Dto/webApi/ErpSalesReturnDto.cs 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
MES.Service/Modes/QTCK.cs 133 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
MES.Service/Modes/QTCKDetail.cs 123 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
MES.Service/Modes/SalesDeliveryNoticeDetail.cs 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
MES.Service/Modes/SalesOrderDetail.cs 18 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
MES.Service/Modes/SalesReturnNotice.cs 5 ●●●●● 补丁 | 查看 | 原始文档 | 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/BasicData/ErpQTCKManager.cs 205 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
MES.Service/service/BasicData/QTCKManager.cs 78 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
MES.Service/service/BasicData/SalesDeliveryNoticeManager.cs 4 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
MES.Service/service/BasicData/SalesOrderManager.cs 4 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
MES.Service/service/BasicData/SalesReturnNoticeManager.cs 3 ●●●● 补丁 | 查看 | 原始文档 | 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/Release/net8.0/MES.Service.dll 补丁 | 查看 | 原始文档 | blame | 历史
MESApplication/bin/Release/net8.0/MES.Service.pdb 补丁 | 查看 | 原始文档 | 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.dll 补丁 | 查看 | 原始文档 | blame | 历史
MESApplication/bin/Release/net8.0/publish/MESApplication.exe 补丁 | 查看 | 原始文档 | blame | 历史
MESApplication/bin/Release/net8.0/publish/MESApplication.pdb 补丁 | 查看 | 原始文档 | blame | 历史
MES.Service/Dto/webApi/ErpQTCK.cs
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,10 @@
using MES.Service.Modes;
namespace MES.Service.Dto.webApi;
public class ErpQTCK
{
    public ErpQTCKDto OrderDto { get; set; }
    public List<ErpQTCKDetailDto> Items { get; set; }
}
MES.Service/Dto/webApi/ErpQTCKDetailDto.cs
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,25 @@
namespace MES.Service.Dto.webApi;
public class ErpQTCKDetailDto
{
    public string? Type { get; set; }
    public string? ERPID { get; set; }
    public string? ERP_HID { get; set; }
    public string? FMaterialId { get; set; } // ç‰©æ–™ç¼–码
    public string? FMaterialName { get; set; } // ç‰©æ–™åç§°
    public string? FModel { get; set; } // è§„格型号
    public string? FUnitID { get; set; } // å•位
    public string? FQty { get; set; } // ç”³è¯·æ•°é‡
    public string? FBaseUnitId { get; set; } // åŸºæœ¬å•位
    public string? FStockId { get; set; } // ä»“库
    public string? FStockLocId { get; set; } // ä»“位
    public string? FLot { get; set; } // æ‰¹å·
    public string? FOwnerTypeId { get; set; } // è´§ä¸»ç±»åž‹
    public string? FOwnerId { get; set; } // è´§ä¸»
    public string? FMtoNo { get; set; } // è®¡åˆ’跟踪号
    public string? FStockStatusId { get; set; } // åº“存状态
    public string? FEntryNote { get; set; } // å¤‡æ³¨
    public string? FBUSINESSCLOSED { get; set; } // ä¸šåС关闭
}
MES.Service/Dto/webApi/ErpQTCKDto.cs
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,27 @@
namespace MES.Service.Dto.webApi;
public class ErpQTCKDto
{
    public string? Type { get; set; }
    public string? ERPID { get; set; }
    public string? FBillNo { get; set; } // å•据编号
    public string? FBillTypeID { get; set; } // å•据类型
    public string? FDate { get; set; } // ç”³è¯·æ—¥æœŸ
    public string? FCustId { get; set; } // å®¢æˆ·
    public string? FDeptId { get; set; } // é¢†ç”¨éƒ¨é—¨
    public string? FBizType { get; set; } // ä¸šåŠ¡ç±»åž‹
    public string? FOwnerTypeIdHead { get; set; } // è´§ä¸»ç±»åž‹
    public string? FNote { get; set; } // å¤‡æ³¨
    public string? FCreatorId { get; set; } // åˆ›å»ºäºº
    public string? FCreateDate { get; set; } // åˆ›å»ºæ—¥æœŸ
    public string? FModifierId { get; set; } // æœ€åŽä¿®æ”¹äºº
    public string? FModifyDate { get; set; } // æœ€åŽä¿®æ”¹æ—¥æœŸ
    public string? FApproverId { get; set; } // å®¡æ ¸äºº
    public string? FApproveDate { get; set; } // å®¡æ ¸æ—¥æœŸ
    public string? FCloseStatus { get; set; } // å…³é—­çŠ¶æ€
    public string? FCloserId { get; set; } // å…³é—­äºº
    public string? FCloseDate { get; set; } // å…³é—­æ—¥æœŸ
    public string? FApplyType { get; set; } // ç”³è¯·ç±»åž‹
}
MES.Service/Dto/webApi/ErpSalesDeliveryDetailDto.cs
@@ -42,5 +42,6 @@
    public string? ErpID { get; set; }  // ERPID
    public string? EHID { get; set; }  // ERP头ID
    public string? FEntrynote { get; set; }  // å¤‡æ³¨
}
MES.Service/Dto/webApi/ErpSalesOrdeDetailDto.cs
@@ -34,5 +34,8 @@
    public string? FBASEARQTY { get; set; }  // ç´¯è®¡åº”收数量(销售基本)
    public string? ErpID { get; set; }  // ERPID
    public string? EHID { get; set; }  // ERP头ID
    public string? FCUST_INO { get; set; }  // å®¢æˆ·ç‰©æ–™ç¼–码
    public string? FCUST_INM { get; set; }  // å®¢æˆ·ç‰©æ–™åç§°
    public string? FCUST_IMD { get; set; }  // å®¢æˆ·ç‰©æ–™è§„æ ¼
}
MES.Service/Dto/webApi/ErpSalesReturnDto.cs
@@ -39,4 +39,5 @@
    public string? FCancelDate { get; set; } // ä½œåºŸæ—¥æœŸ
    public string? FBillCloseStatus { get; set; } // å…³é—­çŠ¶æ€
    public string? FDocumentStatus { get; set; } // å•据状态
    public string? F_UNW_Text_THYY { get; set; } // é€€è´§åŽŸå› 
}
MES.Service/Modes/QTCK.cs
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,133 @@
using System;
using System.Collections.Generic;
using System.Linq;
using SqlSugar;
namespace MES.Service.Modes
{
    /// <summary>
    /// é”€å”®å‘货通知单
    ///</summary>
    [SugarTable("MES_ERPQTCK")]
    public class QTCK
    {
        /// <summary>
        ///
        ///</summary>
         [SugarColumn(ColumnName="ID", OracleSequenceName = "SEQ_TBL", IsPrimaryKey = true)]
         public decimal? Id { get; set; }
        /// <summary>
        ///  ERPID
        ///</summary>
        [SugarColumn(ColumnName = "ERPID")]
        public decimal? ERPID { get; set; }
        /// <summary>
        /// å•据编号
        ///</summary>
        [SugarColumn(ColumnName = "FBillNo")]
        public string BillNo { get; set; }
        /// <summary>
        /// å•据类型
        ///</summary>
        [SugarColumn(ColumnName = "FBillTypeID")]
        public string BillType { get; set; }
        /// <summary>
        /// æ—¥æœŸ
        ///</summary>
        [SugarColumn(ColumnName = "FDate")]
        public DateTime? FDate { get; set; }
        /// <summary>
        /// å®¢æˆ·ID
        ///</summary>
        [SugarColumn(ColumnName = "FCustId")]
        public decimal? CustId { get; set; }
        /// <summary>
        /// éƒ¨é—¨ID
        ///</summary>
        [SugarColumn(ColumnName = "FDeptId")]
        public string DeptId { get; set; }
        /// <summary>
        /// ä¸šåŠ¡ç±»åž‹
        ///</summary>
        [SugarColumn(ColumnName = "FBizType")]
        public string BizType { get; set; }
        /// <summary>
        /// è´Ÿè´£äººç±»åž‹
        ///</summary>
        [SugarColumn(ColumnName = "FOwnerTypeIdHead")]
        public string OwnerTypeIdHead { get; set; }
        /// <summary>
        /// å¤‡æ³¨
        ///</summary>
        [SugarColumn(ColumnName = "FNote")]
        public string Note { get; set; }
        /// <summary>
        /// åˆ›å»ºäººID
        ///</summary>
        [SugarColumn(ColumnName = "FCreatorId")]
        public string CreatorId { get; set; }
        /// <summary>
        /// åˆ›å»ºæ—¥æœŸ
        ///</summary>
        [SugarColumn(ColumnName = "FCreateDate")]
        public DateTime? CreateDate { get; set; }
        /// <summary>
        /// ä¿®æ”¹äººID
        ///</summary>
        [SugarColumn(ColumnName = "FModifierId")]
        public decimal? ModifierId { get; set; }
        /// <summary>
        /// ä¿®æ”¹æ—¥æœŸ
        ///</summary>
        [SugarColumn(ColumnName = "FModifyDate")]
        public DateTime? ModifyDate { get; set; }
        /// <summary>
        /// å®¡æ‰¹äººID
        ///</summary>
        [SugarColumn(ColumnName = "FApproverId")]
        public decimal? ApproverId { get; set; }
        /// <summary>
        /// å®¡æ‰¹æ—¥æœŸ
        ///</summary>
        [SugarColumn(ColumnName = "FApproveDate")]
        public DateTime? ApproveDate { get; set; }
        /// <summary>
        /// å…³é—­çŠ¶æ€
        ///</summary>
        [SugarColumn(ColumnName = "FCloseStatus")]
        public decimal? CloseStatus { get; set; }
        /// <summary>
        /// å…³é—­äººID
        ///</summary>
        [SugarColumn(ColumnName = "FCloserId")]
        public decimal? CloserId { get; set; }
        /// <summary>
        /// å…³é—­æ—¥æœŸ
        ///</summary>
        [SugarColumn(ColumnName = "FCloseDate")]
        public DateTime? CloseDate { get; set; }
        /// <summary>
        /// ç”³è¯·ç±»åž‹
        ///</summary>
        [SugarColumn(ColumnName = "FApplyType")]
        public string ApplyType { get; set; }
    }
}
MES.Service/Modes/QTCKDetail.cs
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,123 @@
using System;
using System.Collections.Generic;
using System.Linq;
using SqlSugar;
namespace MES.Service.Modes
{
    /// <summary>
    /// é”€å”®å‘货通知单明细表
    ///</summary>
    [SugarTable("MES_ERPQTCK_DETAIL")]
    public class QTCKDetail
    {
        /// <summary>
        ///
        ///</summary>
         [SugarColumn(ColumnName="ID", OracleSequenceName = "SEQ_TBL", IsPrimaryKey = true)]
         public decimal? Id { get; set; }
        /// <summary>
        ///
        ///</summary>
        [SugarColumn(ColumnName = "PID")]
        public decimal? PID { get; set; }
        /// <summary>
        ///  ERPID
        ///</summary>
        [SugarColumn(ColumnName = "ERPID")]
        public decimal? ERPID { get; set; }
        /// <summary>
        ///  ERHPID
        ///</summary>
        [SugarColumn(ColumnName = "ERP_HID")]
        public decimal? ERP_HID { get; set; }
        /// <summary>
        /// ç‰©æ–™ç¼–码
        ///</summary>
        [SugarColumn(ColumnName = "FMaterialId")]
        public string MaterialId { get; set; }
        /// <summary>
        /// ç‰©æ–™åç§°
        ///</summary>
        [SugarColumn(ColumnName = "FMaterialName")]
        public string MaterialName { get; set; }
        /// <summary>
        /// è§„格型号
        ///</summary>
        [SugarColumn(ColumnName = "FModel")]
        public string Model { get; set; }
        /// <summary>
        /// å•位
        ///</summary>
        [SugarColumn(ColumnName = "FUnitID")]
        public string UnitID { get; set; }
        /// <summary>
        /// ç”³è¯·æ•°é‡
        ///</summary>
        [SugarColumn(ColumnName = "FQty")]
        public decimal? Qty { get; set; }
        /// <summary>
        /// åŸºæœ¬å•位
        ///</summary>
        [SugarColumn(ColumnName = "FBaseUnitId")]
        public string BaseUnitId { get; set; }
        /// <summary>
        /// ä»“库
        ///</summary>
        [SugarColumn(ColumnName = "FStockId")]
        public string StockId { get; set; }
        /// <summary>
        /// ä»“位
        ///</summary>
        [SugarColumn(ColumnName = "FStockLocId")]
        public string StockLocId { get; set; }
        /// <summary>
        /// æ‰¹å·
        ///</summary>
        [SugarColumn(ColumnName = "FLot")]
        public string Lot { get; set; }
        /// <summary>
        /// è´§ä¸»ç±»åž‹
        ///</summary>
        [SugarColumn(ColumnName = "FOwnerTypeId")]
        public string OwnerTypeId { get; set; }
        /// <summary>
        /// è´§ä¸»
        ///</summary>
        [SugarColumn(ColumnName = "FOwnerId")]
        public decimal? OwnerId { get; set; }
        /// <summary>
        /// è®¡åˆ’跟踪号
        ///</summary>
        [SugarColumn(ColumnName = "FMtoNo")]
        public string MtoNo { get; set; }
        /// <summary>
        /// åº“存状态
        ///</summary>
        [SugarColumn(ColumnName = "FStockStatusId")]
        public string StockStatusId { get; set; }
        /// <summary>
        /// å¤‡æ³¨
        ///</summary>
        [SugarColumn(ColumnName = "FEntryNote")]
        public string EntryNote { get; set; }
        /// <summary>
        /// ä¸šåС关闭
        ///</summary>
        [SugarColumn(ColumnName = "FBUSINESSCLOSED")]
        public string BusinessClosed { get; set; }
    }
}
MES.Service/Modes/SalesDeliveryNoticeDetail.cs
@@ -170,5 +170,15 @@
        ///</summary>
         [SugarColumn(ColumnName="ERP_HEAD_ID"    )]
         public string ErpHeadId { get; set; }
        /// <summary>
        /// ERP头ID
        ///</summary>
        [SugarColumn(ColumnName = "f_UNW_Base_GDY")]
        public string GDY { get; set; }
        /// <summary>
        /// ERP头ID
        ///</summary>
        [SugarColumn(ColumnName = "FEntrynote")]
        public string NOTE { get; set; }
    }
}
MES.Service/Modes/SalesOrderDetail.cs
@@ -200,4 +200,22 @@
    [SugarColumn(ColumnName = "BASEARQTY")]
    public decimal? BASEARQTY { get; set; }
    /// <summary>
    ///     å®¢æˆ·ç‰©æ–™ç¼–码
    /// </summary>
    [SugarColumn(ColumnName = "CUST_INO")]
    public string? CUST_INO { get; set; }
    /// <summary>
    ///     å®¢æˆ·ç‰©æ–™åç§°
    /// </summary>
    [SugarColumn(ColumnName = "CUST_INM")]
    public string? CUST_INM { get; set; }
    /// <summary>
    ///     å®¢æˆ·ç‰©æ–™è§„æ ¼
    /// </summary>
    [SugarColumn(ColumnName = "CUST_IMD")]
    public string? CUST_IMD { get; set; }
}
MES.Service/Modes/SalesReturnNotice.cs
@@ -210,5 +210,10 @@
        ///</summary>
        [SugarColumn(ColumnName = "BILL_STATUS")]
        public string BillStatus { get; set; }
        /// <summary>
        /// é€€è´§åŽŸå› 
        ///</summary>
        [SugarColumn(ColumnName = "FUNWTextTHYY")]
        public string FUNWTextTHYY { 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/BasicData/ErpQTCKManager.cs
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,205 @@
using SqlSugar;
using System;
using System.Collections.Generic;
using MES.Service.DB;
using MES.Service.Modes;
using MES.Service.Dto.webApi;
using MES.Service.service.BasicData;
using System.Globalization;
namespace MES.Service.service
{
    public class QTCKManager : Repository<QTCK>
    {
        //当前类已经继承了 Repository å¢žã€åˆ ã€æŸ¥ã€æ”¹çš„æ–¹æ³•
        private readonly QTCKDetailManager QTCKDetailManager =
            new();
        //ErpSalesRerurn
        public bool Save(ErpQTCK QTCK)
        {
            var erpQTCKDto = QTCK.OrderDto;
            var mesQTCK = ConvertErpToQTCK(QTCK.OrderDto);
            var mesQTCKDatas = ConvertErpToQTCKDetail(QTCK.Items);
            return UseTransaction(db =>
            {
                switch (erpQTCKDto.Type)
                {
                    // case "2":
                    //     return InsertData(db, mesSalesReturn, mesSalesReturnDatas,
                    //         rohInErpRohIn.FBILLTYPE)
                    //         ? 1
                    //         : 0;
                    case "3":
                        return UpdateData(db, mesQTCK, mesQTCKDatas) ? 1 : 0;
                    case "2":
                    case "4":
                        return SaveOrUpdateData(db, mesQTCK, mesQTCKDatas, erpQTCKDto.Type)
                            ? 1
                            : 0;
                    default:
                        throw new NotImplementedException(
                            $"type没有{erpQTCKDto.Type}这个类型");
                }
            }) > 0;
        }
        private bool UpdateData(SqlSugarScope db, QTCK mesQTCK,
            List<QTCKDetail> mesQTCKDatas)
        {
            var decimals = mesQTCKDatas.Select(s => s.Id).ToArray();
            var update = base.DeleteById(mesQTCK.Id);
            var insertOrUpdate = db
                .Deleteable<QTCKDetail>().In(decimals)
                .ExecuteCommand() > 0;
            if (update && insertOrUpdate) return true;
            throw new NotImplementedException("更新失败");
        }
        // æ’入或更新数据的方法
        private bool SaveOrUpdateData(SqlSugarScope db, QTCK mesQTCK,
            List<QTCKDetail> mesQTCKDatas, string type)
        {
            if (mesQTCK.Id != null) base.DeleteById(mesQTCK.Id);
            if (mesQTCKDatas.Count > 0)
                db.Deleteable<QTCKDetail>()
                    .Where(s => s.ERP_HID == mesQTCK.ERPID).ExecuteCommand();
            //var orUpdate = base.Insert(mesQTCK);
            //var baOrUpdate = QTCKDetailManager.InsertRange(mesQTCKDatas);
            //if (orUpdate && baOrUpdate) return true;
            UseTransaction(db =>
            {
                var id = db.Insertable(mesQTCK).ExecuteReturnIdentity();
                for (int i = 0; i < mesQTCKDatas.Count; i++)
                {
                    var item = mesQTCKDatas[i];
                    item.PID = id;
                    db.Insertable(item).IgnoreColumns(true).ExecuteCommand();
                }
                return 1;
            });
            throw new NotImplementedException("插入或更新失败");
        }
        // æ‰¹é‡ä¿å­˜è®°å½•的方法
        public bool SaveList(List<ErpQTCK> QTCKOrder)
        {
            var result = QTCKOrder.Select(Save).ToList();
            return result.All(b => b);
        }
        private QTCK ConvertErpToQTCK(
            ErpQTCKDto 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 QTCKOrder = new QTCK
            {
                ERPID = Convert.ToDecimal(erpDto.ERPID),//ERP行ID
                BillNo = erpDto.FBillNo,
                FDate = ParseDateTime(erpDto.FDate) ?? null,
                BillType = erpDto.FBillTypeID, // å•据类型
                CustId = Convert.ToDecimal(erpDto.FCustId), // å®¢æˆ·ID
                DeptId = erpDto.FDeptId, //销售部门
                BizType = erpDto.FBizType, //
                OwnerTypeIdHead = erpDto.FOwnerTypeIdHead, //
                Note = erpDto.FNote, //
                CreatorId = erpDto.FCreatorId, //
                CreateDate = ParseDateTime(erpDto.FCreateDate) ?? null, //
                ModifierId = Convert.ToDecimal(erpDto.FModifierId), //
                ModifyDate = ParseDateTime(erpDto.FModifyDate) ?? null, //
                ApproveDate = ParseDateTime(erpDto.FApproveDate) ?? null, //
                CloseStatus = Convert.ToDecimal(erpDto.FCloseStatus), //
                CloserId = Convert.ToDecimal(erpDto.FCloserId), //
                CloseDate = ParseDateTime(erpDto.FCloseDate) ?? null, //
                ApplyType = erpDto.FApplyType
            };
            var single = base.GetSingle(it => it.ERPID == Convert.ToDecimal(erpDto.ERPID));
            if (single != null) QTCKOrder.Id = single.Id;
            return QTCKOrder;
        }
        private List<QTCKDetail> ConvertErpToQTCKDetail(
            List<ErpQTCKDetailDto> erpDtoList)
        {
            var QTCKOrderSubList =
                new List<QTCKDetail>();
            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)
            {
                var QTCKOrderSub = new QTCKDetail
                {
                    ERPID = Convert.ToDecimal(erpDto.ERPID),//ERP行ID
                    ERP_HID = Convert.ToDecimal(erpDto.ERP_HID),//ERP头ID
                    MaterialId = erpDto.FMaterialId,//物料编号
                    MaterialName = erpDto.FMaterialName,// ç‰©æ–™åç§°
                    Model = erpDto.FModel,//规格型号
                    UnitID = erpDto.FUnitID,//销售单位
                    Qty = Convert.ToDecimal(erpDto.FQty),//数量
                    BaseUnitId = erpDto.FBaseUnitId,//
                    StockId = erpDto.FStockId,//
                    StockLocId = erpDto.FStockLocId,//
                    Lot = erpDto.FLot,//
                    OwnerTypeId = erpDto.FOwnerTypeId,//
                    OwnerId = Convert.ToDecimal(erpDto.FOwnerId),//
                    MtoNo = erpDto.FMtoNo,//
                    StockStatusId = erpDto.FStockStatusId,//
                    EntryNote = erpDto.FEntryNote,//
                    BusinessClosed = erpDto.FBUSINESSCLOSED//
                };
                var single = QTCKDetailManager.GetSingle(it =>
                    it.ERPID == QTCKOrderSub.ERPID);
                if (single != null) QTCKOrderSub.Id = single.Id;
                QTCKOrderSubList.Add(QTCKOrderSub);
            }
            return QTCKOrderSubList;
        }
    }
}
MES.Service/service/BasicData/QTCKManager.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 QTCKDetailManager : Repository<QTCKDetail>
{
    //当前类已经继承了 Repository å¢žã€åˆ ã€æŸ¥ã€æ”¹çš„æ–¹æ³•
    //这里面写的代码不会给覆盖,如果要重新生成请删除 QTCKDetailManager.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(QTCKDetail).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 QTCKDetail() { };//测试参数
        var insertArray = new QTCKDetail[] { insertData };
        base.Insert(insertData);//插入
        base.InsertRange(insertArray);//批量插入
        var id = base.InsertReturnIdentity(insertData);//插入返回自增列
        base.AsInsertable(insertData).ExecuteCommand();//我们可以转成 Insertable实现复杂插入
        /*********更新*********/
        var updateData = new QTCKDetail() {  };//测试参数
        var updateArray = new QTCKDetail[] { updateData };//测试参数
        base.Update(updateData);//根据实体更新
        base.UpdateRange(updateArray);//批量更新
        //base.Update(it => new QTCKDetail() { ClassName = "a", CreateTime = DateTime.Now }, it => it.id==1);// åªæ›´æ–°ClassName列和CreateTime列,其它列不更新,条件id=1
        base.AsUpdateable(updateData).ExecuteCommand();  //转成Updateable可以实现复杂的插入
        /*********删除*********/
        var deldata = new QTCKDetail() {  };//测试参数
        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/BasicData/SalesDeliveryNoticeManager.cs
@@ -208,7 +208,9 @@
                    TerminationStatus = erpDto.FTerminationStatus,//终止状态
                    TerminationDate = ParseDateTime(erpDto.FTerminateDate),//业务终止日期
                    SumOutQty = erpDto.FSumOutQty,//累计出库数量
                    RemainOutQty = erpDto.FRemainOutQty//未出库数量
                    RemainOutQty = erpDto.FRemainOutQty,//未出库数量
                    GDY = erpDto.F_UNW_Base_GDY,//跟单员
                    NOTE = erpDto.FEntrynote//备注
                };
MES.Service/service/BasicData/SalesOrderManager.cs
@@ -192,7 +192,9 @@
                BaseReturnQty = Convert.ToDecimal(erpDto.FBaseReturnQty),
                BaseRemainOutQty = Convert.ToDecimal(erpDto.FBaseRemainOutQty),
                BASEARQTY = Convert.ToDecimal(erpDto.FBASEARQTY),
                CUST_INO = erpDto.FCUST_INO,
                CUST_INM = erpDto.FCUST_INM,
                CUST_IMD = erpDto.FCUST_IMD,
            };
            var single = _SalesOrderDetailManager.GetSingle(it =>
MES.Service/service/BasicData/SalesReturnNoticeManager.cs
@@ -135,7 +135,8 @@
            CancelledBy = erpDto.FCancellerId, // ä½œåºŸäºº
            CancelDate = ParseDateTime(erpDto.FCancelDate) ?? null, // ä½œåºŸæ—¥æœŸ
            CloseStatus = erpDto.FBillCloseStatus, // å…³é—­çŠ¶æ€
            BillStatus  = erpDto.FDocumentStatus //单据状态
            BillStatus  = erpDto.FDocumentStatus, //单据状态
            FUNWTextTHYY = erpDto.F_UNW_Text_THYY //单据状态
        };
MESApplication/MESApplication.csproj.user
@@ -5,6 +5,6 @@
  </PropertyGroup>
  <PropertyGroup>
    <ActiveDebugProfile>IIS Express</ActiveDebugProfile>
    <NameOfLastUsedPublishProfile>F:\F盘桌面专属\项目代码管理文件夹\上格项目\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>F:\F盘桌面专属\项目代码管理文件夹\上格项目\StandardPda\MESApplication\bin\Release\net8.0\publish\</_PublishTargetUrl>
    <History>True|2024-12-06T08:11:01.2090466Z;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-01-13T07:35:48.6521519Z||;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/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.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.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