hao
6 天以前 040a7959a61619b35a655352d523b6763250e1ea
来料检
已添加15个文件
已修改1个文件
1461 ■■■■■ 文件已修改
StandardInterface/MES.Service/Dto/webApi/ErpSalesDelivery.cs 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
StandardInterface/MES.Service/Dto/webApi/ErpSalesDeliveryDetailDto.cs 43 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
StandardInterface/MES.Service/Dto/webApi/ErpSalesDeliveryDto.cs 49 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
StandardInterface/MES.Service/Dto/webApi/ErpSalesOrdeDetailDto.cs 37 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
StandardInterface/MES.Service/Dto/webApi/ErpSalesOrder.cs 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
StandardInterface/MES.Service/Dto/webApi/ErpSalesOrderDto.cs 38 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
StandardInterface/MES.Service/Dto/webApi/ErpSalesReturn.cs 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
StandardInterface/MES.Service/Dto/webApi/ErpSalesReturnDetailDto.cs 26 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
StandardInterface/MES.Service/Dto/webApi/ErpSalesReturnDto.cs 39 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
StandardInterface/MES.Service/Modes/SalesDeliveryNotice.cs 235 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
StandardInterface/MES.Service/Modes/SalesDeliveryNoticeDetail.cs 184 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
StandardInterface/MES.Service/service/BasicData/Sales/SalesDeliveryNoticeDetailManager.cs 78 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
StandardInterface/MES.Service/service/BasicData/Sales/SalesDeliveryNoticeManager.cs 260 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
StandardInterface/MES.Service/service/QC/LljService.cs 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
StandardInterface/MESApplication/Controllers/BasicData/SalesDeliveryNoticeController.cs 272 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
StandardInterface/MESApplication/Controllers/BasicData/SalesDeliveryNoticeDetailController.cs 169 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
StandardInterface/MES.Service/Dto/webApi/ErpSalesDelivery.cs
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,10 @@
using MES.Service.Modes;
namespace MES.Service.Dto.webApi;
public class ErpSalesDelivery
{
    public ErpSalesDeliveryDto OrderDto { get; set; }
    public List<ErpSalesDeliveryDetailDto> Items { get; set; }
}
StandardInterface/MES.Service/Dto/webApi/ErpSalesDeliveryDetailDto.cs
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,43 @@
namespace MES.Service.Dto.webApi;
public class ErpSalesDeliveryDetailDto
{
    public string? Type { get; set; }
    public string? FMaterialId { get; set; }  // ç‰©æ–™ç¼–码
    public string? FMaterialName { get; set; }  // ç‰©æ–™åç§°
    public string? FMaterialModel { get; set; }  // è§„格型号
    public string? FUnitID { get; set; }  // é”€å”®å•位
    public string? FQty { get; set; }  // é”€å”®æ•°é‡
    public string? FIsFree { get; set; }  // æ˜¯å¦èµ å“
    public string? FDeliverydate { get; set; }  // è¦è´§æ—¥æœŸ
    public string? FStockId { get; set; }  // å‡ºè´§ä»“库
    public string? FMtoNo { get; set; }  // è®¡åˆ’跟踪号
    public string? FLot { get; set; }  // æ‰¹å·
    public string? FSrcBillNo { get; set; }  // æºå•编号
    public decimal? FPriceUnitQty { get; set; }  // è®¡ä»·æ•°é‡
    public string? FOwnerId { get; set; }  // è´§ä¸»
    public string? FStockUnitID { get; set; }  // åº“存单位
    public decimal? FStockQty { get; set; }  // åº“存数量
    public string? FMaterialType { get; set; }  // ç‰©æ–™ç±»åˆ«
    public string? FOwnerTypeID { get; set; }  // è´§ä¸»ç±»åž‹
    public string? FSrcType { get; set; }  // æºå•类型
    public string? FOrderNo { get; set; }  // è®¢å•单号
    public string? FOwnerIdHead { get; set; }  // è´§ä¸»
    public string? FPlanDeliveryDate { get; set; }  //计划发货日期
    public string? FOutLmtUnit { get; set; }  // è¶…发控制单位
    public decimal? FOutMaxQty { get; set; }  // å‡ºåº“上限
    public decimal? FOutMinQty { get; set; }  // å‡ºåº“下限
    public string? FDeliveryLoc { get; set; }  // äº¤è´§åœ°ç‚¹
    public string? FDeliveryLAddress { get; set; }  // äº¤è´§åœ°å€
    public string? FTerminationStatus { get; set; }  // ç»ˆæ­¢çŠ¶æ€
    public string? FTerminateDate { get; set; }  // ä¸šåŠ¡ç»ˆæ­¢æ—¥æœŸ
    public decimal? FSumOutQty { get; set; }  // ç´¯è®¡å‡ºåº“数量
    public decimal? FRemainOutQty { get; set; }  // æœªå‡ºåº“数量
    public string? ErpID { get; set; }  // ERPID
    public string? EHID { get; set; }  // ERP头ID
    public string? FEntrynote { get; set; }  // å¤‡æ³¨
}
StandardInterface/MES.Service/Dto/webApi/ErpSalesDeliveryDto.cs
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,49 @@
namespace MES.Service.Dto.webApi;
public class ErpSalesDeliveryDto
{
    public string? Type { get; set; }
    public string? ErpID { get; set; } // ERPID
    public string? FBillTypeID { get; set; } // å•据类型
    public string? FBillNo { get; set; } // å•据编号
    public string? FDate { get; set; } // æ—¥æœŸ
    public string? FSettleCurrld { get; set; } // ç»“算币别
    public string? FSaleOrgId { get; set; } // é”€å”®ç»„织
    public string? FSaleDeptId { get; set; } // é”€å”®éƒ¨é—¨
    public string? F_UNW_Text_KHDD { get; set; } // å®¢æˆ·è®¢å•
    public string? FCustomerID { get; set; } // å®¢æˆ·
    //public string? F_UNW_LargeText_TBKHBZ { get; set; } // æ·˜å®å®¢æˆ·å¤‡æ³¨
    public string? FHeadDeliveryWay { get; set; } // äº¤è´§æ–¹å¼
    public string? FHeadLocId { get; set; } // äº¤è´§åœ°ç‚¹
    public string? FCarrierID { get; set; } // æ‰¿è¿å•†
    public string? FCarriageNO { get; set; } // è¿è¾“单号
    public string? FDocumentStatus { get; set; } // å•据状态
    public string? FDeliveryOrgID { get; set; } // å‘货组织
    public string? FDeliveryDeptID { get; set; } // å‘货部门
    public string? FStockerGroupId { get; set; } // åº“存组
    public string? FStockerId { get; set; } // ä»“管员
    public string? FSaleGroupId { get; set; } // é”€å”®ç»„
    public string? FSalesManId { get; set; } // é”€å”®å‘˜
    public string? FReceiveCusId { get; set; } // æ”¶è´§æ–¹
    public string? FReceiveCusContact { get; set; } // æ”¶è´§æ–¹è”系人
    public string? FReceiveAddress { get; set; } // æ”¶è´§æ–¹åœ°å€
    public string? FLinkMan { get; set; } // æ”¶è´§æ–¹å§“名
    public string? FLinkPhone { get; set; } // è”系电话
    public string? FSettleID { get; set; } // ç»“ç®—æ–¹
    public string? FPayerID { 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? FCloserId { get; set; } // å…³é—­äºº
    public string? FCloseReason { get; set; } // å…³é—­åŽŸå› 
    public string? FBillCloseStatus { get; set; } // å…³é—­çŠ¶æ€
    public string? FCancelStatus { get; set; } // ä½œåºŸçŠ¶æ€
    public string? FCancellerId { get; set; } // ä½œåºŸäºº
    public string? FCancelDate { get; set; } // ä½œåºŸæ—¥æœŸ
}
StandardInterface/MES.Service/Dto/webApi/ErpSalesOrdeDetailDto.cs
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,37 @@
namespace MES.Service.Dto.webApi;
public class ErpSalesOrderDetailDto
{
    public string? FMaterialId { get; set; }  // ç‰©æ–™ç¼–码
    public string? FUnitID { get; set; }  // é”€å”®å•位
    public string? FQty { get; set; }  // é”€å”®æ•°é‡
    public string? FPriceUnitId { get; set; }  // è®¡ä»·å•位
    public string? FPriceUnitQty { get; set; }  // è®¡ä»·æ•°é‡
    public string? FDeliveryDate { get; set; }  // è¦è´§æ—¥æœŸ
    public string? FIsFree { get; set; }  // æ˜¯å¦èµ å“
    public string? FOwnerTypeId { get; set; }  // è´§ä¸»ç±»åž‹
    public string? FOwnerId { get; set; }  // è´§ä¸»
    public string? FEntryNote { get; set; }  // å¤‡æ³¨
    public string? FMtoNo { get; set; }  // è®¡åˆ’跟踪号
    public string? FLot { get; set; }  // æ‰¹å·
    public string? FDeliveryMaxQty { get; set; }  // å‘货上限
    public string? FDeliveryMinQty { get; set; }  // å‘货下限
    public string? FOutLmtUnitID { get; set; }  // è¶…发控制单位
    public string? FMrpCloseStatus { get; set; }  // ä¸šåС关闭
    public string? FMrpTerminateStatus { get; set; }  // ä¸šåŠ¡ç»ˆæ­¢
    public string? FTerminateDate { get; set; }  // ç»ˆæ­¢æ—¥æœŸ
    public string? FTerminatorId { get; set; }  // ç»ˆæ­¢äºº
    public string? FSrcType { get; set; }  // æºå•类型
    public string? FSrcBillNo { get; set; }  // æºå•单号
    public string? FDeliQty { get; set; }  // ç´¯è®¡å‘货通知数量
    public string? FStockOutQty { get; set; }  // ç´¯è®¡å‡ºåº“数量
    public string? FBaseRetNoticeQty { get; set; }  // ç´¯è®¡é€€è´§é€šçŸ¥æ•°é‡ï¼ˆé”€å”®åŸºæœ¬ï¼‰
    public string? FBaseReturnQty { get; set; }  // ç´¯è®¡é€€è´§æ•°é‡ï¼ˆé”€å”®åŸºæœ¬ï¼‰
    public string? FBaseRemainOutQty { get; set; }  // å‰©ä½™æœªå‡ºæ•°é‡ï¼ˆé”€å”®åŸºæœ¬ï¼‰
    public string? FBASEARQTY { get; set; }  // ç´¯è®¡åº”收数量(销售基本)
    public string? ErpID { get; set; }  // ERPID
    public string? EHID { get; set; }  // ERP头ID
    public string? FMapId { get; set; } //客户物料编码
    public string? FMapName { get; set; } //客户物料名称
    public string? FMapSpec { get; set; } //客户物料规格型号
}
StandardInterface/MES.Service/Dto/webApi/ErpSalesOrder.cs
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,8 @@
namespace MES.Service.Dto.webApi;
public class ErpSalesOrder
{
    public ErpSalesOrderDto OrderDto { get; set; }
    public List<ErpSalesOrderDetailDto> Items { get; set; }
}
StandardInterface/MES.Service/Dto/webApi/ErpSalesOrderDto.cs
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,38 @@
namespace MES.Service.Dto.webApi;
public class ErpSalesOrderDto
{
    public string? Type { get; set; }
    public string? ErpID { get; set; } // ERPID
    public string? FBillNo { get; set; } // å•据编号
    public string? FBillTypeID { get; set; } // å•据类型
    public string? FDocumentStatus { get; set; } // å•据状态
    public string? FDate { get; set; } // å•据日期
    public string? FBusinessType { get; set; } // ä¸šåŠ¡ç±»åž‹
    public string? FHeadDeliveryWay { get; set; } // äº¤è´§æ–¹å¼
    public string? FHEADLOCID { get; set; } // äº¤è´§åœ°ç‚¹
    public string? FCustId { get; set; } // å®¢æˆ·
    public string? FCloseStatus { get; set; } // å…³é—­çŠ¶æ€
    public string? FSaleDeptId { get; set; } // é”€å”®éƒ¨é—¨
    public string? FSalerId { get; set; } // é”€å”®å‘˜
    public string? FChangeReason { get; set; } // å˜æ›´åŽŸå› 
    public string? FNote { get; set; } // å¤‡æ³¨
    public string? FSettleId { get; set; } // ç»“ç®—æ–¹
    public string? FApproverId { get; set; } // å®¡æ ¸äºº
    public string? FLinkMan { get; set; } // æ”¶è´§äººå§“名
    public string? FChargeId { get; set; } // ä»˜æ¬¾æ–¹
    public string? FLinkPhone { get; set; } // è”系电话
    public string? FCreatorId { get; set; } // åˆ›å»ºäºº
    public string? FCreateDate { get; set; } // åˆ›å»ºæ—¥æœŸ
    public string? FModifierId { get; set; } // æœ€åŽä¿®æ”¹äºº
    public string? FModifyDate { get; set; } // æœ€åŽä¿®æ”¹æ—¥æœŸ
    public string? FApproveDate { get; set; } // å®¡æ ¸æ—¥æœŸ
    public string? FCloserId { get; set; } // å…³é—­äºº
    public string? FCloseDate { get; set; } // å…³é—­æ—¥æœŸ
    public string? FChangeDate { get; set; } // å˜æ›´æ—¥æœŸ
    public string? FCancelStatus { get; set; } // ä½œåºŸçŠ¶æ€
    public string? FCancellerId { get; set; } // ä½œåºŸäºº
    public string? FVersionNo { get; set; } // ç‰ˆæœ¬å·
    public string? FChangerId { get; set; } // å˜æ›´äºº
    public string? FEntryNote { get; set; } // å¤‡æ³¨
}
StandardInterface/MES.Service/Dto/webApi/ErpSalesReturn.cs
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,10 @@
using MES.Service.Modes;
namespace MES.Service.Dto.webApi;
public class ErpSalesRerurn
{
    public ErpSalesReturnDto OrderDto { get; set; }
    public List<ErpSalesReturnDetailDto> Items { get; set; }
}
StandardInterface/MES.Service/Dto/webApi/ErpSalesReturnDetailDto.cs
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,26 @@
namespace MES.Service.Dto.webApi;
public class ErpSalesReturnDetailDto
{
    public string? Type { get; set; }
    public string? FMaterialId { get; set; }  // ç‰©æ–™ç¼–码
    public string? FUnitID { get; set; }  // é”€å”®å•位
    public string? FQty { get; set; }  // é”€å”®æ•°é‡
    public string? FIsFree { get; set; }  // æ˜¯å¦èµ å“
    public string? FDeliverydate { get; set; }  // é€€è´§æ—¥æœŸ
    public string? FStockId { get; set; }  // ä»“库
    public string? FMtoNo { get; set; }  // è®¡åˆ’跟踪号
    public string? FLot { get; set; }  // æ‰¹å·
    public string? FEntryDescription { get; set; }  // å¤‡æ³¨
    public string? FRmType { get; set; }  // é€€è´§ç±»åž‹
    public string? FStockUnitID { get; set; }  // åº“存单位
    public decimal? FStockQty { get; set; }  // åº“存数量
    public string? FOwnerTypeID { get; set; }  // è´§ä¸»ç±»åž‹
    public string? FOwnerId { get; set; }  // è´§ä¸»
    public string? FSrcType { get; set; }  // æºå•类型
    public string? FSrcBillNo { get; set; }  // æºå•编号
    public string? FOrderNo { get; set; }  // è®¢å•单号
    public string? ErpID { get; set; }  // ERPID
    public string? EHID { get; set; }  // ERP头ID
}
StandardInterface/MES.Service/Dto/webApi/ErpSalesReturnDto.cs
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,39 @@
namespace MES.Service.Dto.webApi;
public class ErpSalesReturnDto
{
    public string? Type { get; set; }
    public string? ErpID { get; set; } // ERPID
    public string? FBillTypeID { get; set; } // å•据类型
    public string? FBillNo { get; set; } // å•据编号
    public string? FDate { get; set; } // æ—¥æœŸ
    public string? FSettleCurrld { get; set; } // ç»“算币别
    public string? FSaleDeptId { get; set; } // é”€å”®éƒ¨é—¨
    public string? FRetcustId { get; set; } // é€€è´§å®¢æˆ·
    public string? FRetcustReason { get; set; } // é€€è´§åŽŸå› 
    public string? FHeadLocId { get; set; } // äº¤è´§åœ°ç‚¹
    public string? FRetDeptId { get; set; } // åº“存部门
    public string? FStockerGroupId { get; set; } // åº“存组
    public string? FStockerId { get; set; } // ä»“管员
    public string? FSaleGroupId { get; set; } // é”€å”®ç»„
    public string? FSalesManId { get; set; } // é”€å”®å‘˜
    public string? FReceiveCusId { get; set; } // æ”¶è´§æ–¹
    public string? FReceiveCusContact { get; set; } // æ”¶è´§æ–¹è”系人
    public string? FReceiveAddress { get; set; } // æ”¶è´§æ–¹åœ°å€
    public string? FLinkMan { get; set; } // æ”¶è´§æ–¹å§“名
    public string? FSettleCusId { get; set; } // ç»“ç®—æ–¹
    public string? FCreatorId { get; set; } // åˆ›å»ºäºº
    public string? FCreateDate { get; set; } // åˆ›å»ºæ—¥æœŸ
    public string? FModifierId { get; set; } // æœ€åŽä¿®æ”¹äºº
    public string? FModifyDate { get; set; } // æœ€åŽä¿®æ”¹æ—¥æœŸ
    public string? FCloserId { get; set; } // å…³é—­äºº
    public string? FCloseReason { get; set; } // å…³é—­åŽŸå› 
    public string? FCloseDate { get; set; } // å…³é—­æ—¥æœŸ
    public string? FApproverId { get; set; } // å®¡æ ¸äºº
    public string? FApproveDate { get; set; } // å®¡æ ¸æ—¥æœŸ
    public string? FCancelStatus { get; set; } // ä½œåºŸçŠ¶æ€
    public string? FCancellerId { get; set; } // ä½œåºŸäºº
    public string? FCancelDate { get; set; } // ä½œåºŸæ—¥æœŸ
    public string? FBillCloseStatus { get; set; } // å…³é—­çŠ¶æ€
    public string? FDocumentStatus { get; set; } // å•据状态
}
StandardInterface/MES.Service/Modes/SalesDeliveryNotice.cs
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,235 @@
using System;
using System.Collections.Generic;
using System.Linq;
using SqlSugar;
namespace MES.Service.Modes
{
    /// <summary>
    /// é”€å”®å‘货通知单
    ///</summary>
    [SugarTable("SALES_DELIVERY_NOTICE")]
    public class SalesDeliveryNotice
    {
        /// <summary>
        ///
        ///</summary>
         [SugarColumn(ColumnName="ID", OracleSequenceName = "SEQ_sales", IsPrimaryKey = true)]
         public decimal? Id { get; set; }
        /// <summary>
        /// å•据类型
        ///</summary>
         [SugarColumn(ColumnName="BILL_TYPE"    )]
         public string BillType { get; set; }
        /// <summary>
        /// å•据编号
        ///</summary>
         [SugarColumn(ColumnName="BILL_NO"    )]
         public string BillNo { get; set; }
        /// <summary>
        /// æ—¥æœŸ
        ///</summary>
         [SugarColumn(ColumnName="F_DATE"    )]
         public DateTime? FDate { get; set; }
        /// <summary>
        /// ç»“算币别
        ///</summary>
         [SugarColumn(ColumnName="CURRENCY"    )]
         public string? Currency { get; set; }
        /// <summary>
        /// é”€å”®ç»„织
        ///</summary>
         [SugarColumn(ColumnName="SALES_ORG"    )]
         public string? SalesOrg { get; set; }
        /// <summary>
        /// é”€å”®éƒ¨é—¨
        ///</summary>
         [SugarColumn(ColumnName="SALES_DEPT"    )]
         public string? SalesDept { get; set; }
        /// <summary>
        /// å®¢æˆ·è®¢å•
        ///</summary>
         [SugarColumn(ColumnName="CUSTOMER_ORDER_NO"    )]
         public string? CustomerOrderNo { get; set; }
        /// <summary>
        /// å®¢æˆ·
        ///</summary>
         [SugarColumn(ColumnName="CUSTOMER"    )]
         public string? Customer { get; set; }
        /// <summary>
        /// äº¤è´§æ–¹å¼
        ///</summary>
         [SugarColumn(ColumnName="DELIVERY_METHOD"    )]
         public string? DeliveryMethod { get; set; }
        /// <summary>
        /// äº¤è´§åœ°ç‚¹
        ///</summary>
         [SugarColumn(ColumnName="DELIVERY_LOCATION"    )]
         public string? DeliveryLocation { get; set; }
        /// <summary>
        /// æ‰¿è¿å•†
        ///</summary>
         [SugarColumn(ColumnName="CARRIER"    )]
         public string? Carrier { get; set; }
        /// <summary>
        /// è¿è¾“单号
        ///</summary>
         [SugarColumn(ColumnName="TRANSPORT_NO"    )]
         public string? TransportNo { get; set; }
        /// <summary>
        /// å•据状态
        ///</summary>
         [SugarColumn(ColumnName="BILL_NO_TYPE"    )]
         public string? BillNoType { get; set; }
        /// <summary>
        /// å‘货组织
        ///</summary>
         [SugarColumn(ColumnName="DELIVERY_ORG"    )]
         public string? DeliveryOrg { get; set; }
        /// <summary>
        /// å‘货部门
        ///</summary>
         [SugarColumn(ColumnName="DELIVERY_DEPT"    )]
         public string? DeliveryDept { get; set; }
        /// <summary>
        /// åº“存组
        ///</summary>
         [SugarColumn(ColumnName="INVENTORY_GROUP"    )]
         public string? InventoryGroup { get; set; }
        /// <summary>
        /// ä»“管员
        ///</summary>
         [SugarColumn(ColumnName="WAREHOUSE_MANAGER"    )]
         public string? WarehouseManager { get; set; }
        /// <summary>
        /// é”€å”®ç»„
        ///</summary>
         [SugarColumn(ColumnName="SALES_GROUP"    )]
         public string? SalesGroup { get; set; }
        /// <summary>
        /// é”€å”®å‘˜
        ///</summary>
         [SugarColumn(ColumnName="SALES_PERSON"    )]
         public string? SalesPerson { get; set; }
        /// <summary>
        /// æ”¶è´§æ–¹
        ///</summary>
         [SugarColumn(ColumnName="RECEIVER"    )]
         public string? Receiver { get; set; }
        /// <summary>
        /// æ”¶è´§æ–¹è”系人
        ///</summary>
         [SugarColumn(ColumnName="RECEIVER_CONTACT"    )]
         public string? ReceiverContact { get; set; }
        /// <summary>
        /// æ”¶è´§æ–¹åœ°å€
        ///</summary>
         [SugarColumn(ColumnName="RECEIVER_ADDRESS"    )]
         public string? ReceiverAddress { get; set; }
        /// <summary>
        /// æ”¶è´§æ–¹å§“名
        ///</summary>
         [SugarColumn(ColumnName="RECEIVER_NAME"    )]
         public string? ReceiverName { get; set; }
        /// <summary>
        /// è”系电话
        ///</summary>
         [SugarColumn(ColumnName="LINK_PHONE"    )]
         public string? LinkPhone { get; set; }
        /// <summary>
        /// ç»“ç®—æ–¹
        ///</summary>
         [SugarColumn(ColumnName="SETTLE_PARTY"    )]
         public string? SettleParty { get; set; }
        /// <summary>
        /// ä»˜æ¬¾æ–¹
        ///</summary>
         [SugarColumn(ColumnName="PAYER_PARTY"    )]
         public string? PayerParty { get; set; }
        /// <summary>
        /// åˆ›å»ºäºº
        ///</summary>
         [SugarColumn(ColumnName="CREATED_BY"    )]
         public string? CreatedBy { get; set; }
        /// <summary>
        /// åˆ›å»ºæ—¶é—´
        ///</summary>
         [SugarColumn(ColumnName="CREATED_DATE"    )]
         public DateTime? CreatedDate { get; set; }
        /// <summary>
        /// ä¿®æ”¹äºº
        ///</summary>
         [SugarColumn(ColumnName="MODIFIED_BY"    )]
         public string? ModifiedBy { get; set; }
        /// <summary>
        /// ä¿®æ”¹æ—¶é—´
        ///</summary>
         [SugarColumn(ColumnName="MODIFIED_DATE"    )]
         public DateTime? ModifiedDate { get; set; }
        /// <summary>
        /// å…³é—­äºº
        ///</summary>
         [SugarColumn(ColumnName="CLOSED_BY"    )]
         public string? ClosedBy { get; set; }
        /// <summary>
        /// å…³é—­åŽŸå› 
        ///</summary>
         [SugarColumn(ColumnName="CLOSE_REASON"    )]
         public string? CloseReason { get; set; }
        /// <summary>
        /// å…³é—­æ—¥æœŸ
        ///</summary>
         [SugarColumn(ColumnName="CLOSE_DATE"    )]
         public DateTime? CloseDate { get; set; }
        /// <summary>
        /// å®¡æ ¸äºº
        ///</summary>
         [SugarColumn(ColumnName="APPROVED_BY"    )]
         public string? ApprovedBy { get; set; }
        /// <summary>
        /// å®¡æ ¸æ—¥æœŸ
        ///</summary>
         [SugarColumn(ColumnName="APPROVED_DATE"    )]
         public DateTime? ApprovedDate { get; set; }
        /// <summary>
        /// ä½œåºŸçŠ¶æ€
        ///</summary>
         [SugarColumn(ColumnName="CANCEL_STATUS"    )]
         public string? CancelStatus { get; set; }
        /// <summary>
        /// ä½œåºŸäºº
        ///</summary>
         [SugarColumn(ColumnName="CANCELLED_BY"    )]
         public string? CancelledBy { get; set; }
        /// <summary>
        /// ä½œåºŸæ—¥æœŸ
        ///</summary>
         [SugarColumn(ColumnName="CANCEL_DATE"    )]
         public DateTime? CancelDate { get; set; }
        /// <summary>
        /// å…³é—­çŠ¶æ€
        ///</summary>
         [SugarColumn(ColumnName="CLOSE_STATUS"    )]
         public string? CloseStatus { get; set; }
        /// <summary>
        /// æ˜¯å¦æ‰‹åЍ关闭
        ///</summary>
         [SugarColumn(ColumnName="MANUAL_CLOSE_FLAG"    )]
         public string? ManualCloseFlag { get; set; }
        /// <summary>
        /// ERP头ID
        ///</summary>
         [SugarColumn(ColumnName="ERP_ID"    )]
         public string? ErpId { get; set; }
        /// <summary>
        /// å•据状态
        ///</summary>
        [SugarColumn(ColumnName = "BILL_STATUS")]
        public string? BillStatus { get; set; }
    }
}
StandardInterface/MES.Service/Modes/SalesDeliveryNoticeDetail.cs
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,184 @@
using System;
using System.Collections.Generic;
using System.Linq;
using SqlSugar;
namespace MES.Service.Modes
{
    /// <summary>
    /// é”€å”®å‘货通知单明细表
    ///</summary>
    [SugarTable("SALES_DELIVERY_NOTICE_DETAIL")]
    public class SalesDeliveryNoticeDetail
    {
        /// <summary>
        ///
        ///</summary>
         [SugarColumn(ColumnName="ID", OracleSequenceName = "SEQ_sales", IsPrimaryKey = true)]
         public decimal? Id { get; set; }
        /// <summary>
        /// é”€å”®è®¢å•号
        ///</summary>
         [SugarColumn(ColumnName="SALES_ORDER_ID"    )]
         public string SalesOrderId { get; set; }
        /// <summary>
        /// ç‰©æ–™ç¼–码
        ///</summary>
         [SugarColumn(ColumnName="MATERIAL_ID"    )]
         public string MaterialId { get; set; }
        /// <summary>
        /// ç‰©æ–™åç§°
        ///</summary>
         [SugarColumn(ColumnName="MATERIAL_NAME"    )]
         public string MaterialName { get; set; }
        /// <summary>
        /// ç‰©æ–™è§„æ ¼
        ///</summary>
         [SugarColumn(ColumnName="MATERIAL_SPECIFICATION"    )]
         public string MaterialSpecification { get; set; }
        /// <summary>
        /// é”€å”®å•位
        ///</summary>
         [SugarColumn(ColumnName="SALES_UNIT_ID"    )]
         public string SalesUnitId { get; set; }
        /// <summary>
        /// é”€å”®æ•°é‡
        ///</summary>
         [SugarColumn(ColumnName="SALES_QUANTITY"    )]
         public decimal? SalesQuantity { get; set; }
        /// <summary>
        /// æ˜¯å¦èµ å“
        ///</summary>
         [SugarColumn(ColumnName="IS_FREE"    )]
         public string IsFree { get; set; }
        /// <summary>
        /// è¦è´§æ—¥æœŸ
        ///</summary>
         [SugarColumn(ColumnName="DELIVERY_DATE"    )]
         public DateTime? DeliveryDate { get; set; }
        /// <summary>
        /// å‡ºè´§ä»“库
        ///</summary>
         [SugarColumn(ColumnName="WAREHOUSE"    )]
         public string Warehouse { get; set; }
        /// <summary>
        /// è®¡åˆ’跟踪号
        ///</summary>
         [SugarColumn(ColumnName="PLAN_TRACKING_NUMBER"    )]
         public string PlanTrackingNumber { get; set; }
        /// <summary>
        /// æ‰¹å·
        ///</summary>
         [SugarColumn(ColumnName="LOT_NUMBER"    )]
         public string LotNumber { get; set; }
        /// <summary>
        /// æºå•编号
        ///</summary>
         [SugarColumn(ColumnName="SRC_BILL_NO"    )]
         public string SrcBillNo { get; set; }
        /// <summary>
        /// è®¡ä»·æ•°é‡
        ///</summary>
         [SugarColumn(ColumnName="PRICE_QTY"    )]
         public decimal? PriceQty { get; set; }
        /// <summary>
        /// è´§ä¸»
        ///</summary>
         [SugarColumn(ColumnName="OWNER_ID"    )]
         public string OwnerId { get; set; }
        /// <summary>
        /// åº“存单位
        ///</summary>
         [SugarColumn(ColumnName="INVENTORY_UNIT"    )]
         public string InventoryUnit { get; set; }
        /// <summary>
        /// åº“存数量
        ///</summary>
         [SugarColumn(ColumnName="INVENTORY_QUANTITY"    )]
         public decimal? InventoryQuantity { get; set; }
        /// <summary>
        /// ç‰©æ–™ç±»åˆ«
        ///</summary>
         [SugarColumn(ColumnName="MATERIAL_CATEGORY"    )]
         public string MaterialCategory { get; set; }
        /// <summary>
        /// è®¡åˆ’发货日期
        ///</summary>
         [SugarColumn(ColumnName="PLAN_DELIVERY_DATE"    )]
         public DateTime? PlanDeliveryDate { get; set; }
        /// <summary>
        /// è¶…发控制单位
        ///</summary>
         [SugarColumn(ColumnName="OUT_LMT_UNIT"    )]
         public string OutLmtUnit { get; set; }
        /// <summary>
        /// å‡ºåº“上限
        ///</summary>
         [SugarColumn(ColumnName="OUT_MAX_QTY"    )]
         public decimal? OutMaxQty { get; set; }
        /// <summary>
        /// å‡ºåº“下限
        ///</summary>
         [SugarColumn(ColumnName="OUT_MIN_QTY"    )]
         public decimal? OutMinQty { get; set; }
        /// <summary>
        /// äº¤è´§åœ°ç‚¹
        ///</summary>
         [SugarColumn(ColumnName="DELIVERY_LOC"    )]
         public string DeliveryLoc { get; set; }
        /// <summary>
        /// äº¤è´§åœ°å€
        ///</summary>
         [SugarColumn(ColumnName="DELIVERYL_ADDRESS"    )]
         public string DeliverylAddress { get; set; }
        /// <summary>
        /// æºå•单号
        ///</summary>
         [SugarColumn(ColumnName="SOURCE_BILL_NO"    )]
         public string SourceBillNo { get; set; }
        /// <summary>
        /// è®¢å•单号
        ///</summary>
         [SugarColumn(ColumnName="ORDER_BILL_NO"    )]
         public string OrderBillNo { get; set; }
        /// <summary>
        /// ç»ˆæ­¢çŠ¶æ€
        ///</summary>
         [SugarColumn(ColumnName="TERMINATION_STATUS"    )]
         public string TerminationStatus { get; set; }
        /// <summary>
        /// ç»ˆæ­¢æ—¥æœŸ
        ///</summary>
         [SugarColumn(ColumnName="TERMINATION_DATE"    )]
         public DateTime? TerminationDate { get; set; }
        /// <summary>
        /// ç´¯è®¡å‡ºåº“数量
        ///</summary>
         [SugarColumn(ColumnName="SUM_OUT_QTY"    )]
         public decimal? SumOutQty { get; set; }
        /// <summary>
        /// æœªå‡ºåº“数量
        ///</summary>
         [SugarColumn(ColumnName="REMAIN_OUT_QTY"    )]
         public decimal? RemainOutQty { get; set; }
        /// <summary>
        /// ERP行ID
        ///</summary>
         [SugarColumn(ColumnName="ERP_LINE_ID"    )]
         public string ErpLineId { get; set; }
        /// <summary>
        /// ERP头ID
        ///</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>
        /// å¤‡æ³¨
        ///</summary>
        [SugarColumn(ColumnName = "FEntrynote")]
        public string NOTE { get; set; }
    }
}
StandardInterface/MES.Service/service/BasicData/Sales/SalesDeliveryNoticeDetailManager.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 SalesDeliveryNoticeDetailManager : Repository<SalesDeliveryNoticeDetail>
{
    //当前类已经继承了 Repository å¢žã€åˆ ã€æŸ¥ã€æ”¹çš„æ–¹æ³•
    //这里面写的代码不会给覆盖,如果要重新生成请删除 SalesDeliveryNoticeDetailManager.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(SalesDeliveryNoticeDetail).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 SalesDeliveryNoticeDetail() { };//测试参数
        var insertArray = new SalesDeliveryNoticeDetail[] { insertData };
        base.Insert(insertData);//插入
        base.InsertRange(insertArray);//批量插入
        var id = base.InsertReturnIdentity(insertData);//插入返回自增列
        base.AsInsertable(insertData).ExecuteCommand();//我们可以转成 Insertable实现复杂插入
        /*********更新*********/
        var updateData = new SalesDeliveryNoticeDetail() {  };//测试参数
        var updateArray = new SalesDeliveryNoticeDetail[] { updateData };//测试参数
        base.Update(updateData);//根据实体更新
        base.UpdateRange(updateArray);//批量更新
        //base.Update(it => new SalesDeliveryNoticeDetail() { ClassName = "a", CreateTime = DateTime.Now }, it => it.id==1);// åªæ›´æ–°ClassName列和CreateTime列,其它列不更新,条件id=1
        base.AsUpdateable(updateData).ExecuteCommand();  //转成Updateable可以实现复杂的插入
        /*********删除*********/
        var deldata = new SalesDeliveryNoticeDetail() {  };//测试参数
        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
 }
}
StandardInterface/MES.Service/service/BasicData/Sales/SalesDeliveryNoticeManager.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.webApi;
using MES.Service.service.BasicData;
using System.Globalization;
namespace MES.Service.service
{
    public class SalesDeliveryNoticeManager : Repository<SalesDeliveryNotice>
    {
        //当前类已经继承了 Repository å¢žã€åˆ ã€æŸ¥ã€æ”¹çš„æ–¹æ³•
        private readonly SalesDeliveryNoticeDetailManager _SalesDeliveryDetailManager =
            new();
        //ErpSalesRerurn
        public bool Save(ErpSalesDelivery SalesDelivery)
        {
            var erpSalesDeliveryDto = SalesDelivery.OrderDto;
            var mesSalesDelivery = ConvertErpToSalesDelivery(SalesDelivery.OrderDto);
            var mesSalesDeliveryDatas = ConvertErpToSalesDeliveryDetail(SalesDelivery.Items);
            return UseTransaction(db =>
            {
                switch (erpSalesDeliveryDto.Type)
                {
                    // case "2":
                    //     return InsertData(db, mesSalesReturn, mesSalesReturnDatas,
                    //         rohInErpRohIn.FBILLTYPE)
                    //         ? 1
                    //         : 0;
                    case "3":
                        return UpdateData(db, mesSalesDelivery, mesSalesDeliveryDatas) ? 1 : 0;
                    case "2":
                    case "4":
                        return SaveOrUpdateData(db, mesSalesDelivery, mesSalesDeliveryDatas, erpSalesDeliveryDto.Type)
                            ? 1
                            : 0;
                    default:
                        throw new NotImplementedException(
                            $"type没有{erpSalesDeliveryDto.Type}这个类型");
                }
            }) > 0;
        }
        private bool UpdateData(SqlSugarScope db, SalesDeliveryNotice mesSalesDelivery,
            List<SalesDeliveryNoticeDetail> mesSalesDeliveryDatas)
        {
            // å…ˆåˆ¤æ–­ MES_INV_ITEM_OUTS æ˜¯å¦å­˜åœ¨å¯¹åº”领料记录
            var hasMaterialOut = db.Queryable<MesInvItemOuts>()
                                   .Any(x => x.WorkNo == mesSalesDelivery.BillNo);
            if (hasMaterialOut)
            {
                throw new Exception($"MES有领料记录,单号:{mesSalesDelivery.BillNo},不能删除!");
            }
           // var decimals = mesSalesDeliveryDatas.Select(s => s.Id).ToArray();
            var decimals = mesSalesDeliveryDatas
                ?.Where(x => x.Id.HasValue)
                .Select(x => x.Id.Value)
                .ToArray() ?? new decimal[0];
            var update = true;
            if (mesSalesDelivery != null)
            {
                if (mesSalesDelivery.Id != null)
                {
                    update = base.DeleteById(mesSalesDelivery.Id);
                }
            }
            var insertOrUpdate = true;
            if (decimals != null && decimals.Length > 0)
            {
                insertOrUpdate = db.Deleteable<SalesDeliveryNoticeDetail>().In(decimals).ExecuteCommand() > 0;
            }
            if (update && insertOrUpdate)
            {
                return true;
            }
            throw new NotImplementedException("更新失败");
        }
        // æ’入或更新数据的方法
        private bool SaveOrUpdateData(SqlSugarScope db, SalesDeliveryNotice mesSalesDelivery,
            List<SalesDeliveryNoticeDetail> mesSalesDeliveryDatas, string type)
        {
            if (mesSalesDelivery.Id != null) base.DeleteById(mesSalesDelivery.Id);
            if (mesSalesDeliveryDatas.Count > 0)
                db.Deleteable<SalesDeliveryNoticeDetail>()
                    .Where(s => s.ErpHeadId == mesSalesDelivery.ErpId).ExecuteCommand();
            var orUpdate = base.Insert(mesSalesDelivery);
            //var baOrUpdate = _SalesDeliveryDetailManager.InsertRange(mesSalesDeliveryDatas);
            foreach (var item in mesSalesDeliveryDatas)
            {
                _SalesDeliveryDetailManager.Insert(item);
            }
            //if (orUpdate && baOrUpdate) return true;
            return orUpdate;
            throw new NotImplementedException("插入或更新失败");
        }
        // æ‰¹é‡ä¿å­˜è®°å½•的方法
        public bool SaveList(List<ErpSalesDelivery> salesOrder)
        {
            var result = salesOrder.Select(Save).ToList();
            return result.All(b => b);
        }
        private SalesDeliveryNotice ConvertErpToSalesDelivery(
            ErpSalesDeliveryDto 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 salesOrder = new SalesDeliveryNotice
            {
                BillNo = erpDto.FBillNo,
                ErpId = erpDto.ErpID,
                FDate = ParseDateTime(erpDto.FDate) ?? null,
                BillType = erpDto.FBillTypeID, // å•据类型
                Currency = erpDto.FSettleCurrld, // ç»“算币别
                SalesDept = erpDto.FSaleDeptId, //销售部门
                CustomerOrderNo = erpDto.F_UNW_Text_KHDD, //销售部门
                Customer = erpDto.FCustomerID, // å®¢æˆ·
                DeliveryMethod = erpDto.FHeadDeliveryWay, // äº¤è´§æ–¹å¼
                DeliveryLocation = erpDto.FHeadLocId, // äº¤è´§åœ°ç‚¹
                Carrier = erpDto.FCarrierID, // æ‰¿è¿å•†
                TransportNo = erpDto.FCarriageNO, // è¿è¾“单号
                BillNoType = erpDto.FCarriageNO, // å•据状态
                DeliveryDept = erpDto.FDeliveryDeptID, // å‘货部门
                InventoryGroup = erpDto.FStockerGroupId, // åº“存组
                WarehouseManager = erpDto.FStockerId, // ä»“管员
                SalesGroup = erpDto.FSaleGroupId, // é”€å”®ç»„
                SalesPerson = erpDto.FSalesManId,//销售员
                Receiver = erpDto.FReceiveCusId, // æ”¶è´§æ–¹
                ReceiverContact = erpDto.FReceiveCusContact, // æ”¶è´§æ–¹è”系人
                ReceiverAddress = erpDto.FReceiveAddress, // æ”¶è´§æ–¹åœ°å€
                ReceiverName = erpDto.FLinkMan, // æ”¶è´§æ–¹å§“名
                LinkPhone    = erpDto.FLinkPhone,//联系电话
                SettleParty = erpDto.FSettleID, // ç»“ç®—æ–¹
                PayerParty = erpDto.FPayerID,//付款方
                CreatedBy = erpDto.FCreatorId, // åˆ›å»ºäºº
                CreatedDate = ParseDateTime(erpDto.FCreateDate) ?? null, // åˆ›å»ºæ—¶é—´
                ModifiedBy = erpDto.FModifierId, // ä¿®æ”¹äºº
                ModifiedDate = ParseDateTime(erpDto.FModifyDate) ?? null, // ä¿®æ”¹æ—¶é—´
                ClosedBy = erpDto.FCloserId, // å…³é—­äºº
                CloseReason = erpDto.FCloseReason, // å…³é—­åŽŸå› 
               // CloseDate = ParseDateTime(erpDto.FCloseDate) ?? null, // å…³é—­æ—¥æœŸ
                ApprovedBy = erpDto.FApproverId, // å®¡æ ¸äºº
                ApprovedDate = ParseDateTime(erpDto.FApproveDate) ?? null, // å®¡æ ¸æ—¥æœŸ
                CancelStatus = erpDto.FCancelStatus, // ä½œåºŸçŠ¶æ€
                CancelledBy = erpDto.FCancellerId, // ä½œåºŸäºº
                CancelDate = ParseDateTime(erpDto.FCancelDate) ?? null, // ä½œåºŸæ—¥æœŸ
                CloseStatus = erpDto.FBillCloseStatus, // å…³é—­çŠ¶æ€
                BillStatus = erpDto.FDocumentStatus, //单据状态
                DeliveryOrg = erpDto.FDeliveryOrgID, //发货组织
                SalesOrg    = erpDto.FSaleOrgId //销售组织
            };
            var single = base.GetSingle(it => it.ErpId == erpDto.ErpID);
            if (single != null) salesOrder.Id = single.Id;
            return salesOrder;
        }
        private List<SalesDeliveryNoticeDetail> ConvertErpToSalesDeliveryDetail(
            List<ErpSalesDeliveryDetailDto> erpDtoList)
        {
            var salesOrderSubList =
                new List<SalesDeliveryNoticeDetail>();
            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 salesOrderSub = new SalesDeliveryNoticeDetail
                {
                    ErpLineId = erpDto.ErpID,//ERP行ID
                    ErpHeadId = erpDto.EHID,//ERP头ID
                    MaterialId = erpDto.FMaterialId,//物料编号
                    MaterialName = erpDto.FMaterialName,// ç‰©æ–™åç§°
                    MaterialSpecification = erpDto.FMaterialModel,//规格型号
                    SalesUnitId = erpDto.FUnitID,//销售单位
                    SalesQuantity = Convert.ToDecimal(erpDto.FQty),//销售数量
                    IsFree = erpDto.FIsFree,//是否赠品
                    DeliveryDate = ParseDateTime(erpDto.FDeliverydate),//要货日期
                    Warehouse = erpDto.FStockId,//出货仓库
                    PlanTrackingNumber = erpDto.FMtoNo,//计划跟踪号
                    LotNumber = erpDto.FLot,//批号
                    SrcBillNo = erpDto.FSrcBillNo,//源单编号
                    PriceQty = erpDto.FPriceUnitQty,//计价数量
                    OwnerId = erpDto.FOwnerIdHead,//货主
                    InventoryUnit = erpDto.FStockUnitID,//库存单位
                    InventoryQuantity = Convert.ToDecimal(erpDto.FStockQty),//库存数量
                    //MaterialCategory = erpDto.FMaterialType,//物料类别
                    PlanDeliveryDate = ParseDateTime(erpDto.FPlanDeliveryDate),//计划发货日期
                    OutLmtUnit = erpDto.FOutLmtUnit,//超发控制单位
                    OutMaxQty = erpDto.FOutMaxQty,//出库上限
                    OutMinQty = erpDto.FOutMinQty,//出库下限
                    DeliveryLoc = erpDto.FDeliveryLoc,//交货地点
                    DeliverylAddress = erpDto.FDeliveryLAddress,//交货地址
                    SourceBillNo = erpDto.FSrcBillNo,//原单单号
                    OrderBillNo = erpDto.FOrderNo,//订单单号
                    TerminationStatus = erpDto.FTerminationStatus,//终止状态
                    TerminationDate = ParseDateTime(erpDto.FTerminateDate),//业务终止日期
                    SumOutQty = erpDto.FSumOutQty,//累计出库数量
                    RemainOutQty = erpDto.FRemainOutQty,//未出库数量
                    NOTE = erpDto.FEntrynote//备注
                };
                var single = _SalesDeliveryDetailManager.GetSingle(it =>
                    it.ErpLineId == salesOrderSub.ErpLineId);
                if (single != null) salesOrderSub.Id = single.Id;
                salesOrderSubList.Add(salesOrderSub);
            }
            return salesOrderSubList;
        }
    }
}
StandardInterface/MES.Service/service/QC/LljService.cs
@@ -65,7 +65,8 @@
                        .Contains(queryObj.SearchValue.ToLower())
                     || a.ItemModel.ToLower()
                        .Contains(queryObj.SearchValue.ToLower()))
            .OrderByDescending((a, b,
          //  .OrderByDescending((a, b,
            .OrderBy ((a, b,
                    e, f, g, i) => a.Id)
            //.Select((a, b,
            //        e, f, g, i) => new LtsLlj
StandardInterface/MESApplication/Controllers/BasicData/SalesDeliveryNoticeController.cs
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,272 @@
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;
namespace MESApplication.Controllers
{
    [ApiController]
    [Route("api/[controller]")]
    public class SalesDeliveryNoticeController : ControllerBase
    {
        private readonly MessageCenterManager _manager = new();
        private SalesDeliveryNoticeManager m = new SalesDeliveryNoticeManager();
        private readonly string METHOD = "POST";
        private readonly string TableName = "SALES_DELIVERY_NOTICE";
        private readonly string URL = "http://localhost:10054/api/SalesDeliveryNotice/";
        //
        [HttpPost("Save")]
        public ResponseResult Save(ErpSalesDelivery salesOrder)
        {
            var entity = new MessageCenter();
            entity.TableName = TableName;
            entity.Url = URL + "Save";
            entity.Method = METHOD;
            entity.Route = salesOrder.OrderDto.FBillNo;
            entity.Data = JsonConvert.SerializeObject(salesOrder);
            entity.Status = 1;
            entity.CreateBy = "PL017";
            try
            {
                dynamic resultInfos = new ExpandoObject();
                var save = m.Save(salesOrder);
                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<ErpSalesDelivery> 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] SalesDeliveryNotice 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] SalesDeliveryNotice 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] SalesDeliveryNotice 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);
            }
        }
    }
}
StandardInterface/MESApplication/Controllers/BasicData/SalesDeliveryNoticeDetailController.cs
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,169 @@
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;
namespace MESApplication.Controllers
{
    [ApiController]
    [Route("api/[controller]")]
    public class SalesDeliveryNoticeDetailController : ControllerBase
    {
        private SalesDeliveryNoticeDetailManager m = new SalesDeliveryNoticeDetailManager();
        /***进入模版管理可以修改模版***/
        /// <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] SalesDeliveryNoticeDetail 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] SalesDeliveryNoticeDetail 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] SalesDeliveryNoticeDetail 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);
            }
        }
    }
}