1、销售模块:预测订单、标准出货、销售退货接口代码提交 2、仓退申请单接口bug修复代码提交
已修改8个文件
已添加16个文件
4371 ■■■■■ 文件已修改
StandardPda/MES.Service/Dto/webApi/ErpSalesDelivery.cs 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
StandardPda/MES.Service/Dto/webApi/ErpSalesDeliveryDetailDto.cs 225 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
StandardPda/MES.Service/Dto/webApi/ErpSalesDeliveryDto.cs 153 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
StandardPda/MES.Service/Dto/webApi/ErpSalesOrdeDetailDto.cs 108 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
StandardPda/MES.Service/Dto/webApi/ErpSalesOrder.cs 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
StandardPda/MES.Service/Dto/webApi/ErpSalesOrderDto.cs 78 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
StandardPda/MES.Service/Dto/webApi/ErpSalesReturn.cs 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
StandardPda/MES.Service/Dto/webApi/ErpSalesReturnDetailDto.cs 148 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
StandardPda/MES.Service/Dto/webApi/ErpSalesReturnDto.cs 128 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
StandardPda/MES.Service/Modes/SalesDeliveryNotice.cs 324 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
StandardPda/MES.Service/Modes/SalesDeliveryNoticeDetail.cs 382 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
StandardPda/MES.Service/Modes/SalesOrder.cs 306 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
StandardPda/MES.Service/Modes/SalesOrderDetail.cs 371 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
StandardPda/MES.Service/Modes/SalesReturnNotice.cs 297 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
StandardPda/MES.Service/Modes/SalesReturnNoticeDetail.cs 236 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
StandardPda/MES.Service/service/BasicData/SalesDeliveryNoticeDetailManager.cs 78 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
StandardPda/MES.Service/service/BasicData/SalesDeliveryNoticeManager.cs 279 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
StandardPda/MES.Service/service/BasicData/SalesOrderManager.cs 209 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
StandardPda/MES.Service/service/BasicData/SalesReturnNoticeDetailManager.cs 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
StandardPda/MES.Service/service/BasicData/SalesReturnNoticeManager.cs 203 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
StandardPda/MES.Service/service/Warehouse/MesInvItemOutsManager.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
StandardPda/MESApplication/Controllers/BasicData/SalesDeliveryNoticeController.cs 276 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
StandardPda/MESApplication/Controllers/BasicData/SalesOrderController.cs 263 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
StandardPda/MESApplication/Controllers/BasicData/SalesReturnNoticeController.cs 272 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
StandardPda/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; }
}
StandardPda/MES.Service/Dto/webApi/ErpSalesDeliveryDetailDto.cs
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,225 @@
namespace MES.Service.Dto.webApi;
public class ErpSalesDeliveryDetailDto
{
    /// <summary>
    /// ç‰©æ–™ç¼–码
    /// </summary>
    public string? FMaterialId { get; set; }
    /// <summary>
    /// é”€å”®å•位
    /// </summary>
    public string? FUnitID { get; set; }
    /// <summary>
    /// é”€å”®æ•°é‡
    /// </summary>
    public string? FQty { get; set; }
    /// <summary>
    /// è¦è´§æ—¥æœŸ
    /// </summary>
    public string? FDeliveryDate { get; set; }
    /// <summary>
    /// æºå•单号
    /// </summary>
    public string? FSrcBillNo { get; set; }
    /// <summary>
    /// ERPID
    /// </summary>
    public string? ErpID { get; set; }
    /// <summary>
    /// ERP头ID
    /// </summary>
    public string? EHID { get; set; }
    /// <summary>
    /// å®¢æˆ·ç‰©æ–™ç¼–码1
    /// </summary>
    public string? FMapId { get; set; }
    /// <summary>
    /// å®¢æˆ·ç‰©æ–™åç§°
    /// </summary>
    public string? FMapName { get; set; }
    // /// <summary>
    // /// å®¢æˆ·ç‰©æ–™è§„格型号
    // /// </summary>
    // public string? FMapSpec { get; set; }  // æ³¨é‡ŠæŽ‰çš„字段
    /// <summary>
    /// äº¤è´§åœ°ç‚¹
    /// </summary>
    public string? FDeliveryLoc { get; set; }
    /// <summary>
    /// äº¤è´§åœ°å€
    /// </summary>
    public string? FDeliveryLAddress { get; set; }
    /// <summary>
    /// è®¡åˆ’出货日
    /// </summary>
    public string? FPlanDeliveryDate { get; set; }
    /// <summary>
    /// è´§ä¸»ç»„织
    /// </summary>
    public string? FOwnerIdHead { get; set; }
    /// <summary>
    /// å®¢æˆ·æ–™å·2
    /// </summary>
    public string? FMapId2 { get; set; }
    /// <summary>
    /// é¡¹ç›®
    /// </summary>
    public string? FProject { get; set; }
    /// <summary>
    /// å­˜å‚¨åœ°ç‚¹
    /// </summary>
    public string? FStorageLocation { get; set; }
    /// <summary>
    /// å…è´¹å“ç±»åž‹
    /// </summary>
    public string? FFreeItemType { get; set; }
    /// <summary>
    /// è¡¨ä½“备注
    /// </summary>
    public string? FBodyNote { get; set; }
    /// <summary>
    /// åº“存可用量
    /// </summary>
    public decimal? FAvailableStock { get; set; }
    /// <summary>
    /// æŸ¥è¯¢åº“存时间
    /// </summary>
    public string? FInventoryQueryTime { get; set; }
    /// <summary>
    /// è¡ŒçŠ¶æ€
    /// </summary>
    public string? FLineStatus { get; set; }
    /// <summary>
    /// æ”¶è´§åœ°å€å…¨ç§°
    /// </summary>
    public string? FReceiveAddressFull { get; set; }
    /// <summary>
    /// æ”¶è´§è”系人
    /// </summary>
    public string? FReceiverContact { get; set; }
    /// <summary>
    /// å¯é€€æ¢
    /// </summary>
    public string? FReturnExchangeAllowed { get; set; }
    /// <summary>
    /// å§”外加工件数量
    /// </summary>
    public decimal? FOutsourcedProcessQty { get; set; }
    /// <summary>
    /// å¯ç”¨æ—¥æœŸ
    /// </summary>
    public string? FAvailableDate { get; set; }
    /// <summary>
    /// æ‰¿è¯ºæ—¥æœŸ
    /// </summary>
    public string? FCommitmentDate { get; set; }
    /// <summary>
    /// å®¢æˆ·ç¡®è®¤å‡ºè´§æ—¥
    /// </summary>
    public string? FCustomerConfirmShipDate { get; set; }
    /// <summary>
    /// è®¡åˆ’组织
    /// </summary>
    public string? FPlannedOrg { get; set; }
    /// <summary>
    /// ä¾›åº”商直运
    /// </summary>
    public string? FVendorDirectShip { get; set; }
    /// <summary>
    /// ä¾›åº”来源
    /// </summary>
    public string? FSupplySource { get; set; }
    /// <summary>
    /// ä¾›åº”类型
    /// </summary>
    public string? FSupplyType { get; set; }
    /// <summary>
    /// ä¾›åº”组织
    /// </summary>
    public string? FSupplyOrg { get; set; }
    /// <summary>
    /// ä¾›åº”商
    /// </summary>
    public string? FSupplier { get; set; }
    /// <summary>
    /// å‡ºè´§æ–¹å¼
    /// </summary>
    public string? FShippingMethod { get; set; }
    /// <summary>
    /// MRP/DRP需求
    /// </summary>
    public string? FMRPDR { get; set; }
    /// <summary>
    /// éœ€æ±‚分类
    /// </summary>
    public string? FDemandCategory { get; set; }
    /// <summary>
    /// åº“存规划
    /// </summary>
    public string? FInventoryPlanning { get; set; }
    /// <summary>
    /// è¡Œå¤‡æ³¨
    /// </summary>
    public string? FLineRemark { get; set; }
    /// <summary>
    /// æ¥æºå•据类别
    /// </summary>
    public string? FSourceDocCategory { get; set; }
    /// <summary>
    /// æ¥æºå•号
    /// </summary>
    public string? FSourceDocNo { get; set; }
    /// <summary>
    /// æ¥æºå•行号
    /// </summary>
    public decimal? FSourceDocLineNo { get; set; }
    /// <summary>
    /// è¡Œå·
    /// </summary>
    public string? FLINE_NO { get; set; }
}
StandardPda/MES.Service/Dto/webApi/ErpSalesDeliveryDto.cs
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,153 @@
namespace MES.Service.Dto.webApi;
public class ErpSalesDeliveryDto
{
    /// <summary>
    /// æŽ¥å£ç±»åž‹
    /// </summary>
    public string? Type { get; set; }
    /// <summary>
    /// ERPID
    /// </summary>
    public string? ErpID { get; set; }
    /// <summary>
    /// å•据编号
    /// </summary>
    public string? FBillNo { get; set; }
    /// <summary>
    /// å•据类型
    /// </summary>
    public string? FBillTypeID { get; set; }
    /// <summary>
    /// å•据状态
    /// </summary>
    public string? FDocumentStatus { get; set; }
    /// <summary>
    /// å•据日期
    /// </summary>
    public string? FDate { get; set; }
    /// <summary>
    /// éœ€æ±‚分类
    /// </summary>
    public string? FBusinessType { get; set; }
    /// <summary>
    /// äº¤è´§æ–¹å¼
    /// </summary>
    public string? FHeadDeliveryWay { get; set; }
    /// <summary>
    /// äº¤è´§åœ°ç‚¹
    /// </summary>
    public string? FHEADLOCID { get; set; }
    /// <summary>
    /// å®¢æˆ·
    /// </summary>
    public string? FCustId { get; set; }
    /// <summary>
    /// é”€å”®éƒ¨é—¨
    /// </summary>
    public string? FSaleDeptId { get; set; }
    /// <summary>
    /// é”€å”®å‘˜
    /// </summary>
    public string? FSalerId { get; set; }
    /// <summary>
    /// å¤‡æ³¨
    /// </summary>
    public string? FNote { get; set; }
    /// <summary>
    /// å®¡æ ¸äºº
    /// </summary>
    public string? FApproverId { get; set; }
    /// <summary>
    /// åˆ›å»ºæ—¥æœŸ
    /// </summary>
    public string? FCreateDate { get; set; }
    /// <summary>
    /// å®¡æ ¸æ—¥æœŸ
    /// </summary>
    public string? FApproveDate { get; set; }
    /// <summary>
    /// ç‰ˆæœ¬å·
    /// </summary>
    public string? FVersionNo { get; set; }
    /// <summary>
    /// è¡¨å¤´å¤‡æ³¨
    /// </summary>
    public string? FEntryNote { get; set; }
    /// <summary>
    /// æ”¶è´§æ–¹åœ°å€
    /// </summary>
    public string? FReceiveAddress { get; set; }
    /// <summary>
    /// æ”¶è´§è”系人
    /// </summary>
    public string? FReceiverContactID { get; set; }
    /// <summary>
    /// å‘货组织
    /// </summary>
    public string? FDeliveryOrgID { get; set; }
    //----------------以下为新增字段---------------------------------
    /// <summary>
    /// æ¥æºç±»åˆ«
    /// </summary>
    public string FSourceCategory { get; set; }
    /// <summary>
    /// æ¥æºå•据
    /// </summary>
    public string FSourceDocument { get; set; }
    /// <summary>
    /// äº¤æœŸ
    /// </summary>
    public string? FDeliveryDate { get; set; }
    /// <summary>
    /// é¡¹ç›®
    /// </summary>
    public string FProject { get; set; }
    /// <summary>
    /// å®¢æˆ·é‡‡è´­è®¢å•
    /// </summary>
    public string FCustomerPo { get; set; }
    /// <summary>
    /// å‡ºè´§åŽŸåˆ™
    /// </summary>
    public string FShippingPolicy { get; set; }
    /// <summary>
    /// è£…运港
    /// </summary>
    public string FShippingPort { get; set; }
    /// <summary>
    /// ç›®çš„æ¸¯
    /// </summary>
    public string FDestinationPort { get; set; }
}
StandardPda/MES.Service/Dto/webApi/ErpSalesOrdeDetailDto.cs
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,108 @@
namespace MES.Service.Dto.webApi
{
    /// <summary>
    /// ERP é”€å”®è®¢å•明细传输对象
    /// </summary>
    public class ErpSalesOrderDetailDto
    {
        /// <summary>
        /// ç‰©æ–™ç¼–码
        /// </summary>
        public string? FMaterialId { get; set; }
        /// <summary>
        /// é”€å”®æ•°é‡
        /// </summary>
        public string? FQty { get; set; }
        /// <summary>
        /// è®¡ä»·å•位
        /// </summary>
        public string? FPriceUnitId { get; set; }
        /// <summary>
        /// è¦è´§æ—¥æœŸ
        /// </summary>
        public string? FDeliveryDate { get; set; }
        /// <summary>
        /// è´§ä¸»
        /// </summary>
        public string? FOwnerId { get; set; }
        /// <summary>
        /// å¤‡æ³¨
        /// </summary>
        public string? FEntryNote { get; set; }
        /// <summary>
        /// æ‰¹å·
        /// </summary>
        public string? FLot { get; set; }
        /// <summary>
        /// ERP ID
        /// </summary>
        public string? ErpID { get; set; }
        /// <summary>
        /// ERP å¤´ ID
        /// </summary>
        public string? EHID { get; set; }
        /// <summary>
        /// å®¢æˆ·ç‰©æ–™ç¼–码
        /// </summary>
        public string? FMapId { get; set; }
        /// <summary>
        /// è¡Œå·
        /// </summary>
        public string? FLineNo { get; set; }
        /// <summary>
        /// è¡ŒçŠ¶æ€
        /// </summary>
        public string? FLineStatus { get; set; }
        /// <summary>
        /// æ‰©å±•字段
        /// </summary>
        public string? FExtendField { get; set; }
        /// <summary>
        /// å®¢æˆ·
        /// </summary>
        public string? FCustomer { get; set; }
        /// <summary>
        /// æ”¶è´§ä½ç½®
        /// </summary>
        public string? FReceiveLocation { get; set; }
        /// <summary>
        /// ä¾›åº”组织
        /// </summary>
        public string? FSupplyOrg { get; set; }
        /// <summary>
        /// éƒ¨é—¨
        /// </summary>
        public string? FDepartment { get; set; }
        /// <summary>
        /// ä¸šåŠ¡å‘˜
        /// </summary>
        public string? FSalesPerson { get; set; }
        /// <summary>
        /// é¡¹ç›®
        /// </summary>
        public string? FProject { get; set; }
        /// <summary>
        /// éœ€æ±‚分类
        /// </summary>
        public string? FDemandCategory { get; set; }
    }
}
StandardPda/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; }
}
StandardPda/MES.Service/Dto/webApi/ErpSalesOrderDto.cs
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,78 @@
namespace MES.Service.Dto.webApi
{
    /// <summary>
    /// ERP é”€å”®è®¢å•传输对象
    /// </summary>
    public class ErpSalesOrderDto
    {
        /// <summary>
        /// ç±»åž‹
        /// </summary>
        public string? Type { get; set; }
        /// <summary>
        /// ERP ID
        /// </summary>
        public string? ErpID { get; set; }
        /// <summary>
        /// å•据编号
        /// </summary>
        public string? FBillNo { get; set; }
        /// <summary>
        /// å•据类型
        /// </summary>
        public string? FBillTypeID { get; set; }
        /// <summary>
        /// å•据状态
        /// </summary>
        public string? FDocumentStatus { get; set; }
        /// <summary>
        /// å•据日期
        /// </summary>
        public string? FDate { get; set; }
        /// <summary>
        /// å®¢æˆ·
        /// </summary>
        public string? FCustId { get; set; }
        /// <summary>
        /// é”€å”®éƒ¨é—¨
        /// </summary>
        public string? FSaleDeptId { get; set; }
        /// <summary>
        /// å¤‡æ³¨
        /// </summary>
        public string? FEntryNote { get; set; }
        /// <summary>
        /// ä¸šåŠ¡å‘˜
        /// </summary>
        public string? FSalesPerson { get; set; }
        /// <summary>
        /// é¡¹ç›®
        /// </summary>
        public string? FProject { get; set; }
        /// <summary>
        /// éœ€æ±‚分类
        /// </summary>
        public string? FDemandCategory { get; set; }
        /// <summary>
        /// èµ·å§‹æ—¥æœŸ
        /// </summary>
        public string? FStartDate { get; set; }
        /// <summary>
        /// æˆªæ­¢æ—¥æœŸ
        /// </summary>
        public string? FEndDate { get; set; }
    }
}
StandardPda/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; }
}
StandardPda/MES.Service/Dto/webApi/ErpSalesReturnDetailDto.cs
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,148 @@
namespace MES.Service.Dto.webApi
{
    /// <summary>
    /// ERP销售退货明细DTO
    /// </summary>
    public class ErpSalesReturnDetailDto
    {
        /// <summary>
        /// ç‰©æ–™ç¼–码
        /// </summary>
        public string? FMaterialId { get; set; }
        /// <summary>
        /// é”€å”®æ•°é‡
        /// </summary>
        public string? FQty { get; set; }
        /// <summary>
        /// ä»“库(存储地点)
        /// </summary>
        public string? FStockId { get; set; }
        /// <summary>
        /// æ‰¹å·
        /// </summary>
        public string? FLot { get; set; }
        /// <summary>
        /// å¤‡æ³¨
        /// </summary>
        public string? FEntryDescription { get; set; }
        /// <summary>
        /// è´§ä¸»
        /// </summary>
        public string? FOwnerId { get; set; }
        /// <summary>
        /// æºå•类型
        /// </summary>
        public string? FSrcType { get; set; }
        /// <summary>
        /// æºå•编号
        /// </summary>
        public string? FSrcBillNo { get; set; }
        /// <summary>
        /// è®¢å•单号
        /// </summary>
        public string? FOrderNo { get; set; }
        /// <summary>
        /// ERP ID
        /// </summary>
        public string? ErpID { get; set; }
        /// <summary>
        /// ERP头ID
        /// </summary>
        public string? EHID { get; set; }
        /// <summary>
        /// è¡Œå·
        /// </summary>
        public int? FLineNumber { get; set; }
        /// <summary>
        /// è¡ŒçŠ¶æ€
        /// </summary>
        public string FLineStatus { get; set; }
        /// <summary>
        /// é€€æ¬¾å®¢æˆ·
        /// </summary>
        public string FRefundCustomer { get; set; }
        /// <summary>
        /// ä¾›åº”商
        /// </summary>
        public string FSupplier { get; set; }
        /// <summary>
        /// å…è´¹å“ç±»åž‹
        /// </summary>
        public string FFreebieType { get; set; }
        /// <summary>
        /// å…è´¹å“åŽŸå› 
        /// </summary>
        public string FFreebieReason { get; set; }
        /// <summary>
        /// æºå¤´å•据行号
        /// </summary>
        public int? FSourceDocLineNo { get; set; }
        /// <summary>
        /// æºå¤´å•据子行号
        /// </summary>
        public int? FSourceDocSubLineNo { get; set; }
        /// <summary>
        /// æ¥æºå•据类别
        /// </summary>
        public string FSourceDocType { get; set; }
        /// <summary>
        /// æºå•据行号
        /// </summary>
        public int? FOriginalDocLineNo { get; set; }
        /// <summary>
        /// è¡¥è´§ç»„织
        /// </summary>
        public string FReplenishOrg { get; set; }
        /// <summary>
        /// æ”¶è´§ç»„织
        /// </summary>
        public string FReceivingOrg { get; set; }
        /// <summary>
        /// åŽŸä¸šåŠ¡å‘˜
        /// </summary>
        public string FOriginalSalesman { get; set; }
        /// <summary>
        /// åŽŸéƒ¨é—¨
        /// </summary>
        public string FOriginalDept { get; set; }
        /// <summary>
        /// é¡¹ç›®
        /// </summary>
        public string FProject { get; set; }
        /// <summary>
        /// é€€è´§åŽŸå› 
        /// </summary>
        public string FReturnReason { get; set; }
        /// <summary>
        /// é€€è´§è¯´æ˜Ž
        /// </summary>
        public string FReturnDescription { get; set; }
    }
}
StandardPda/MES.Service/Dto/webApi/ErpSalesReturnDto.cs
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,128 @@
namespace MES.Service.Dto.webApi
{
    /// <summary>
    /// ERP销售退货DTO
    /// </summary>
    public class ErpSalesReturnDto
    {
        /// <summary>
        /// ç±»åž‹
        /// </summary>
        public string? Type { get; set; }
        /// <summary>
        /// ERP ID
        /// </summary>
        public string? ErpID { get; set; }
        /// <summary>
        /// å•据类型
        /// </summary>
        public string? FBillTypeID { get; set; }
        /// <summary>
        /// å•据编号
        /// </summary>
        public string? FBillNo { get; set; }
        /// <summary>
        /// æ—¥æœŸ
        /// </summary>
        public string? FDate { get; set; }
        /// <summary>
        /// é€€è´§å®¢æˆ·
        /// </summary>
        public string? FRetcustId { get; set; }
        /// <summary>
        /// é€€è´§åŽŸå› 
        /// </summary>
        public string? FRetcustReason { get; set; }
        /// <summary>
        /// äº¤è´§åœ°ç‚¹
        /// </summary>
        public string? FHeadLocId { get; set; }
        /// <summary>
        /// æ”¶è´§æ–¹è”系人
        /// </summary>
        public string? FReceiveCusContact { get; set; }
        /// <summary>
        /// æ”¶è´§æ–¹åœ°å€
        /// </summary>
        public string? FReceiveAddress { get; set; }
        /// <summary>
        /// åˆ›å»ºäºº
        /// </summary>
        public string? FCreatorId { get; set; }
        /// <summary>
        /// åˆ›å»ºæ—¥æœŸ
        /// </summary>
        public string? FCreateDate { get; set; }
        /// <summary>
        /// å®¡æ ¸äºº
        /// </summary>
        public string? FApproverId { get; set; }
        /// <summary>
        /// å®¡æ ¸æ—¥æœŸ
        /// </summary>
        public string? FApproveDate { get; set; }
        /// <summary>
        /// å•据状态
        /// </summary>
        public string? FDocumentStatus { get; set; }
        /// <summary>
        /// é€€å›žç±»åž‹
        /// </summary>
        public string ReturnType { get; set; }
        /// <summary>
        /// æ€»æ•°é‡
        /// </summary>
        public decimal TotalQuantity { get; set; }
        /// <summary>
        /// æ¥æºå•据类别
        /// </summary>
        public string SourceDocumentCategory { get; set; }
        /// <summary>
        /// æºå•据
        /// </summary>
        public string SourceDocument { get; set; }
        /// <summary>
        /// è¡¥è´§ç»„织
        /// </summary>
        public string ReplenishmentOrganization { get; set; }
        /// <summary>
        /// å®¢æˆ·è¦æ±‚日期
        /// </summary>
        public DateTime CustomerRequestDate { get; set; }
        /// <summary>
        /// é€€è´§ä¸šåŠ¡å‘˜
        /// </summary>
        public string ReturnSalesman { get; set; }
        /// <summary>
        /// é€€è´§éƒ¨é—¨
        /// </summary>
        public string ReturnDepartment { get; set; }
        /// <summary>
        /// é€€è´§è¯´æ˜Ž
        /// </summary>
        public string ReturnDescription { get; set; }
    }
}
StandardPda/MES.Service/Modes/SalesDeliveryNotice.cs
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,324 @@
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 = "SALES_DELIVERY_NOTICE_ID", 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; }
        //-----------------新增字段---------------------------------
        /// <summary>
        /// æ¥æºç±»åˆ«
        /// </summary>
        [SugarColumn(ColumnName = "FSourceCategory", IsNullable = false)]
        public string FSourceCategory { get; set; }
        /// <summary>
        /// æ¥æºå•据
        /// </summary>
        [SugarColumn(ColumnName = "FSourceDocument", IsNullable = false)]
        public string FSourceDocument { get; set; }
        /// <summary>
        /// äº¤æœŸ
        /// </summary>
        [SugarColumn(ColumnName = "FDeliveryDate", IsNullable = true)]
        public string? FDeliveryDate { get; set; }
        /// <summary>
        /// é¡¹ç›®
        /// </summary>
        [SugarColumn(ColumnName = "FProject", IsNullable = false)]
        public string FProject { get; set; }
        /// <summary>
        /// å®¢æˆ·é‡‡è´­è®¢å•
        /// </summary>
        [SugarColumn(ColumnName = "FCustomerPo", IsNullable = false)]
        public string FCustomerPo { get; set; }
        /// <summary>
        /// å‡ºè´§åŽŸåˆ™
        /// </summary>
        [SugarColumn(ColumnName = "FShippingPolicy", IsNullable = false)]
        public string FShippingPolicy { get; set; }
        /// <summary>
        /// è£…运港
        /// </summary>
        [SugarColumn(ColumnName = "FShippingPort", IsNullable = false)]
        public string FShippingPort { get; set; }
        /// <summary>
        /// ç›®çš„æ¸¯
        /// </summary>
        [SugarColumn(ColumnName = "FDestinationPort", IsNullable = false)]
        public string FDestinationPort { get; set; }
        /// <summary>
        /// æ”¶è´§è”系人
        /// </summary>
        [SugarColumn(ColumnName = "FReceiverContactID", IsNullable = true)]
        public string? FReceiverContactID { get; set; }
        /// <summary>
        /// è¡¨å¤´å¤‡æ³¨
        /// </summary>
        [SugarColumn(ColumnName = "FEntryNote", IsNullable = true)]
        public string? FEntryNote { get; set; }
        /// <summary>
        /// ç‰ˆæœ¬å·
        /// </summary>
        [SugarColumn(ColumnName = "FVersionNo", IsNullable = true)]
        public string? FVersionNo { get; set; }
        /// <summary>
        /// éœ€æ±‚分类
        /// </summary>
        [SugarColumn(ColumnName = "FBusinessType", IsNullable = true)]
        public string? FBusinessType { get; set; }
        /// <summary>
        /// äº¤è´§åœ°ç‚¹
        /// </summary>
        [SugarColumn(ColumnName = "FHEADLOCID", IsNullable = true)]
        public string? FHEADLOCID { get; set; }
        /// <summary>
        /// å®¢æˆ·
        /// </summary>
        [SugarColumn(ColumnName = "FCustId", IsNullable = true)]
        public string? FCustId { get; set; }
        /// <summary>
        /// å¤‡æ³¨
        /// </summary>
        [SugarColumn(ColumnName = "FNote", IsNullable = true)]
        public string? FNote { get; set; }
    }
}
StandardPda/MES.Service/Modes/SalesDeliveryNoticeDetail.cs
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,382 @@
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_DELIVERY_NOTICE_DETAIL", 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; }
        /// <summary>
        /// è¦è´§æ—¥æœŸ
        /// </summary>
        [SugarColumn(ColumnName = "FDELIVERYDATE", IsNullable = true)]
        public string? FDeliveryDate { get; set; }
        /// <summary>
        /// å®¢æˆ·ç‰©æ–™ç¼–码1
        /// </summary>
        [SugarColumn(ColumnName = "FMAPID", IsNullable = true)]
        public string? FMapId { get; set; }
        /// <summary>
        /// å®¢æˆ·ç‰©æ–™åç§°
        /// </summary>
        [SugarColumn(ColumnName = "FMAPNAME", IsNullable = true)]
        public string? FMapName { get; set; }
        /// <summary>
        /// å®¢æˆ·æ–™å·2
        /// </summary>
        [SugarColumn(ColumnName = "FMAPID2", IsNullable = true)]
        public string? FMapId2 { get; set; }
        /// <summary>
        /// é¡¹ç›®
        /// </summary>
        [SugarColumn(ColumnName = "FPROJECT", IsNullable = true)]
        public string? FProject { get; set; }
        /// <summary>
        /// å­˜å‚¨åœ°ç‚¹
        /// </summary>
        [SugarColumn(ColumnName = "FSTORAGELOCATION", IsNullable = true)]
        public string? FStorageLocation { get; set; }
        /// <summary>
        /// å…è´¹å“ç±»åž‹
        /// </summary>
        [SugarColumn(ColumnName = "FFREEITEMTYPE", IsNullable = true)]
        public string? FFreeItemType { get; set; }
        /// <summary>
        /// è¡¨ä½“备注
        /// </summary>
        [SugarColumn(ColumnName = "FBODYNOTE", IsNullable = true)]
        public string? FBodyNote { get; set; }
        /// <summary>
        /// åº“存可用量
        /// </summary>
        [SugarColumn(ColumnName = "FAVAILABLESTOCK", IsNullable = true)]
        public decimal? FAvailableStock { get; set; }
        /// <summary>
        /// æŸ¥è¯¢åº“存时间
        /// </summary>
        [SugarColumn(ColumnName = "FINVENTORYQUERYTIME", IsNullable = true)]
        public string? FInventoryQueryTime { get; set; }
        /// <summary>
        /// è¡ŒçŠ¶æ€
        /// </summary>
        [SugarColumn(ColumnName = "FLINESTATUS", IsNullable = true)]
        public string? FLineStatus { get; set; }
        /// <summary>
        /// æ”¶è´§åœ°å€å…¨ç§°
        /// </summary>
        [SugarColumn(ColumnName = "FRECEIVEADDRESSFULL", IsNullable = true)]
        public string? FReceiveAddressFull { get; set; }
        /// <summary>
        /// æ”¶è´§è”系人
        /// </summary>
        [SugarColumn(ColumnName = "FRECEIVERCONTACT", IsNullable = true)]
        public string? FReceiverContact { get; set; }
        /// <summary>
        /// å¯é€€æ¢
        /// </summary>
        [SugarColumn(ColumnName = "FRETURNEXCHANGEALLOWED", IsNullable = true)]
        public string? FReturnExchangeAllowed { get; set; }
        /// <summary>
        /// å§”外加工件数量
        /// </summary>
        [SugarColumn(ColumnName = "FOUTSOURCEDPROCESSQTY", IsNullable = true)]
        public decimal? FOutsourcedProcessQty { get; set; }
        /// <summary>
        /// å¯ç”¨æ—¥æœŸ
        /// </summary>
        [SugarColumn(ColumnName = "FAVAILABLEDATE", IsNullable = true)]
        public string? FAvailableDate { get; set; }
        /// <summary>
        /// æ‰¿è¯ºæ—¥æœŸ
        /// </summary>
        [SugarColumn(ColumnName = "FCOMMITMENTDATE", IsNullable = true)]
        public string? FCommitmentDate { get; set; }
        /// <summary>
        /// å®¢æˆ·ç¡®è®¤å‡ºè´§æ—¥
        /// </summary>
        [SugarColumn(ColumnName = "FCUSTOMERCONFIRMSHIPDATE", IsNullable = true)]
        public string? FCustomerConfirmShipDate { get; set; }
        /// <summary>
        /// è®¡åˆ’组织
        /// </summary>
        [SugarColumn(ColumnName = "FPLANNEDORG", IsNullable = true)]
        public string? FPlannedOrg { get; set; }
        /// <summary>
        /// ä¾›åº”商直运
        /// </summary>
        [SugarColumn(ColumnName = "FVENDORDIRECTSHIP", IsNullable = true)]
        public string? FVendorDirectShip { get; set; }
        /// <summary>
        /// ä¾›åº”来源
        /// </summary>
        [SugarColumn(ColumnName = "FSUPPLYSOURCE", IsNullable = true)]
        public string? FSupplySource { get; set; }
        /// <summary>
        /// ä¾›åº”类型
        /// </summary>
        [SugarColumn(ColumnName = "FSUPPLYTYPE", IsNullable = true)]
        public string? FSupplyType { get; set; }
        /// <summary>
        /// ä¾›åº”组织
        /// </summary>
        [SugarColumn(ColumnName = "FSUPPLYORG", IsNullable = true)]
        public string? FSupplyOrg { get; set; }
        /// <summary>
        /// ä¾›åº”商
        /// </summary>
        [SugarColumn(ColumnName = "FSUPPLIER", IsNullable = true)]
        public string? FSupplier { get; set; }
        /// <summary>
        /// å‡ºè´§æ–¹å¼
        /// </summary>
        [SugarColumn(ColumnName = "FSHIPPINGMETHOD", IsNullable = true)]
        public string? FShippingMethod { get; set; }
        /// <summary>
        /// MRP/DRP需求
        /// </summary>
        [SugarColumn(ColumnName = "FMRPDR", IsNullable = true)]
        public string? FMRPDR { get; set; }
        /// <summary>
        /// éœ€æ±‚分类
        /// </summary>
        [SugarColumn(ColumnName = "FDEMANDCATEGORY", IsNullable = true)]
        public string? FDemandCategory { get; set; }
        /// <summary>
        /// åº“存规划
        /// </summary>
        [SugarColumn(ColumnName = "FINVENTORYPLANNING", IsNullable = true)]
        public string? FInventoryPlanning { get; set; }
        /// <summary>
        /// è¡Œå¤‡æ³¨
        /// </summary>
        [SugarColumn(ColumnName = "FLINEREMARK", IsNullable = true)]
        public string? FLineRemark { get; set; }
        /// <summary>
        /// æ¥æºå•据类别
        /// </summary>
        [SugarColumn(ColumnName = "FSOURCEDOCCATEGORY", IsNullable = true)]
        public string? FSourceDocCategory { get; set; }
        /// <summary>
        /// æ¥æºå•号
        /// </summary>
        [SugarColumn(ColumnName = "FSOURCEDOCNO", IsNullable = true)]
        public string? FSourceDocNo { get; set; }
        /// <summary>
        /// æ¥æºå•行号
        /// </summary>
        [SugarColumn(ColumnName = "FSOURCEDOCLINENO", IsNullable = true)]
        public decimal? FSourceDocLineNo { get; set; }
        /// <summary>
        /// è¡Œå·
        /// </summary>
        [SugarColumn(ColumnName = "FLINE_NO", IsNullable = true)]
        public string? FLINE_NO { get; set; }
    }
}
StandardPda/MES.Service/Modes/SalesOrder.cs
@@ -1,113 +1,235 @@
using SqlSugar;
namespace MES.Service.Modes;
/// <summary>
///     é”€å”®è®¢å•表
/// </summary>
[SugarTable("SALES_ORDER")]
public class SalesOrder
namespace MES.Service.Modes
{
    /// <summary>
    ///     SEQ_sales序列
    /// é”€å”®è®¢å•表
    /// </summary>
    [SugarColumn(ColumnName = "ID", OracleSequenceName = "SEQ_sales",
        IsPrimaryKey = true)]
    public decimal Id { get; set; }
    [SugarTable("SALES_ORDER")]
    public class SalesOrder
    {
        /// <summary>
        /// SEQ_sales序列
        /// </summary>
        [SugarColumn(ColumnName = "ID", OracleSequenceName = "SALES_ORDER_ID", IsPrimaryKey = true)]
        public decimal? Id { get; set; }
    /// <summary>
    ///     è®¢å•单号
    /// </summary>
    [SugarColumn(ColumnName = "ORDER_ID")]
    public string OrderId { get; set; }
        /// <summary>
        /// ERPID
        /// </summary>
        [SugarColumn(ColumnName = "ERP_ID")]
        public decimal? ErpID { get; set; }
    /// <summary>
    ///     è®¢å•单别
    /// </summary>
    [SugarColumn(ColumnName = "ORDER_TYPE")]
    public string OrderType { get; set; }
        /// <summary>
        /// å•据编号
        /// </summary>
        [SugarColumn(ColumnName = "BILL_NO")]
        public string? BillNo { get; set; }
    /// <summary>
    ///     å—订日期
    /// </summary>
    [SugarColumn(ColumnName = "ORDER_DATE")]
    public DateTime? OrderDate { get; set; }
        /// <summary>
        /// å•据类型
        /// </summary>
        [SugarColumn(ColumnName = "BILL_TYPE_ID")]
        public string? BillTypeId { get; set; }
    /// <summary>
    ///     å•据版本
    /// </summary>
    [SugarColumn(ColumnName = "DOCUMENT_VERSION")]
    public long? DocumentVersion { get; set; }
        /// <summary>
        /// å•据状态
        /// </summary>
        [SugarColumn(ColumnName = "DOCUMENT_STATUS")]
        public string? DocumentStatus { get; set; }
    /// <summary>
    ///     å•据日期
    /// </summary>
    [SugarColumn(ColumnName = "DOCUMENT_DATE")]
    public DateTime? DocumentDate { get; set; }
        /// <summary>
        /// æ—¥æœŸ
        /// </summary>
        [SugarColumn(ColumnName = "F_DATE")]
        public DateTime? FDate { get; set; }
    /// <summary>
    ///     å·¥åŽ‚ç¼–å·
    /// </summary>
    [SugarColumn(ColumnName = "FACTORY_ID")]
    public string FactoryId { get; set; }
        /// <summary>
        /// ä¸šåŠ¡ç±»åž‹
        /// </summary>
        [SugarColumn(ColumnName = "BUSINESS_TYPE")]
        public string? BusinessType { get; set; }
    /// <summary>
    ///     å·¥åŽ‚ç®€ç§°
    /// </summary>
    [SugarColumn(ColumnName = "FACTORY_NAME")]
    public string FactoryName { get; set; }
        /// <summary>
        /// äº¤è´§æ–¹å¼
        /// </summary>
        [SugarColumn(ColumnName = "HEAD_DELIVERY_WAY")]
        public string? HeadDeliveryWay { get; set; }
    /// <summary>
    ///     å®¢æˆ·ç¼–号
    /// </summary>
    [SugarColumn(ColumnName = "CUSTOMER_ID")]
    public string CustomerId { get; set; }
        /// <summary>
        /// äº¤è´§åœ°ç‚¹
        /// </summary>
        [SugarColumn(ColumnName = "HEAD_LOC_ID")]
        public string? HeadLocId { get; set; }
    /// <summary>
    ///     å®¢æˆ·ç®€ç§°
    /// </summary>
    [SugarColumn(ColumnName = "CUSTOMER_NAME")]
    public string CustomerName { get; set; }
        /// <summary>
        /// å®¢æˆ·
        /// </summary>
        [SugarColumn(ColumnName = "CUST_ID")]
        public string? CustId { get; set; }
    /// <summary>
    ///     å®¢æˆ·å•号
    /// </summary>
    [SugarColumn(ColumnName = "CUSTOMER_ORDER_ID")]
    public string CustomerOrderId { get; set; }
        /// <summary>
        /// å…³é—­çŠ¶æ€
        /// </summary>
        [SugarColumn(ColumnName = "CLOSE_STATUS")]
        public string? CloseStatus { get; set; }
    /// <summary>
    ///     éƒ¨é—¨ç¼–号
    /// </summary>
    [SugarColumn(ColumnName = "DEPARTMENT_ID")]
    public string DepartmentId { get; set; }
        /// <summary>
        /// é”€å”®éƒ¨é—¨
        /// </summary>
        [SugarColumn(ColumnName = "SALE_DEPT_ID")]
        public string? SaleDeptId { get; set; }
    /// <summary>
    ///     æ€»æ•°é‡
    /// </summary>
    [SugarColumn(ColumnName = "TOTAL_QUANTITY")]
    public decimal? TotalQuantity { get; set; }
        /// <summary>
        /// é”€å”®å‘˜
        /// </summary>
        [SugarColumn(ColumnName = "SALER_ID")]
        public string? SalerId { get; set; }
    /// <summary>
    ///     å¤‡æ³¨
    /// </summary>
    [SugarColumn(ColumnName = "REMARKS")]
    public string Remarks { get; set; }
        /// <summary>
        /// å˜æ›´åŽŸå› 
        /// </summary>
        [SugarColumn(ColumnName = "CHANGE_REASON")]
        public string? ChangeReason { get; set; }
    /// <summary>
    ///     erp审核日期
    /// </summary>
    [SugarColumn(ColumnName = "APPROVAL_DATE")]
    public DateTime? ApprovalDate { get; set; }
        /// <summary>
        /// ç»“ç®—æ–¹
        /// </summary>
        [SugarColumn(ColumnName = "SETTLE_ID")]
        public string? SettleId { get; set; }
    /// <summary>
    ///     erp审核者
    /// </summary>
    [SugarColumn(ColumnName = "APPROVER")]
    public string Approver { get; set; }
        /// <summary>
        /// å®¡æ ¸äºº
        /// </summary>
        [SugarColumn(ColumnName = "APPROVER_ID")]
        public string? ApproverId { get; set; }
    /// <summary>
    ///     ERPID
    /// </summary>
    [SugarColumn(ColumnName = "ERP_ID")]
    public string ErpId { get; set; }
}
        /// <summary>
        /// æ”¶è´§äººå§“名
        /// </summary>
        [SugarColumn(ColumnName = "LINK_MAN")]
        public string? LinkMan { get; set; }
        /// <summary>
        /// ä»˜æ¬¾æ–¹
        /// </summary>
        [SugarColumn(ColumnName = "CHARGE_ID")]
        public string? ChargeId { get; set; }
        /// <summary>
        /// è”系电话
        /// </summary>
        [SugarColumn(ColumnName = "LINK_PHONE")]
        public string? LinkPhone { get; set; }
        /// <summary>
        /// åˆ›å»ºäºº
        /// </summary>
        [SugarColumn(ColumnName = "CREATOR_ID")]
        public string? CreatorId { get; set; }
        /// <summary>
        /// åˆ›å»ºæ—¥æœŸ
        /// </summary>
        [SugarColumn(ColumnName = "CREATE_DATE")]
        public DateTime? CreateDate { get; set; }
        /// <summary>
        /// æœ€åŽä¿®æ”¹äºº
        /// </summary>
        [SugarColumn(ColumnName = "MODIFIER_ID")]
        public string? ModifierId { get; set; }
        /// <summary>
        /// æœ€åŽä¿®æ”¹æ—¥æœŸ
        /// </summary>
        [SugarColumn(ColumnName = "MODIFY_DATE")]
        public DateTime? ModifyDate { get; set; }
        /// <summary>
        /// å®¡æ ¸æ—¥æœŸ
        /// </summary>
        [SugarColumn(ColumnName = "APPROVE_DATE")]
        public DateTime? ApproveDate { get; set; }
        /// <summary>
        /// å…³é—­äºº
        /// </summary>
        [SugarColumn(ColumnName = "CLOSER_ID")]
        public string? CloserId { get; set; }
        /// <summary>
        /// å…³é—­æ—¥æœŸ
        /// </summary>
        [SugarColumn(ColumnName = "CLOSE_DATE")]
        public DateTime? CloseDate { get; set; }
        /// <summary>
        /// å˜æ›´æ—¥æœŸ
        /// </summary>
        [SugarColumn(ColumnName = "CHANGE_DATE")]
        public DateTime? ChangeDate { get; set; }
        /// <summary>
        /// ä½œåºŸçŠ¶æ€
        /// </summary>
        [SugarColumn(ColumnName = "CANCEL_STATUS")]
        public string? CancelStatus { get; set; }
        /// <summary>
        /// ä½œåºŸäºº
        /// </summary>
        [SugarColumn(ColumnName = "CANCELLER_ID")]
        public string? CancellerId { get; set; }
        /// <summary>
        /// ç‰ˆæœ¬å·
        /// </summary>
        [SugarColumn(ColumnName = "VERSION_NO")]
        public double? VersionNo { get; set; }
        /// <summary>
        /// å˜æ›´äºº
        /// </summary>
        [SugarColumn(ColumnName = "CHANGER_ID")]
        public string? ChangerId { get; set; }
        /// <summary>
        /// å¤‡æ³¨
        /// </summary>
        [SugarColumn(ColumnName = "ENTRY_NOTE")]
        public string? EntryNote { get; set; }
        //--------------新增字段---------------------------------
        /// <summary>
        /// ä¸šåŠ¡å‘˜
        /// </summary>
        [SugarColumn(ColumnName = "FSALES_PERSON", IsNullable = true)]
        public string? FSalesPerson { get; set; }
        /// <summary>
        /// é¡¹ç›®
        /// </summary>
        [SugarColumn(ColumnName = "FPROJECT", IsNullable = true)]
        public string? FProject { get; set; }
        /// <summary>
        /// éœ€æ±‚分类
        /// </summary>
        [SugarColumn(ColumnName = "FDEMANDCATEGORY", IsNullable = true)]
        public string? FDemandCategory { get; set; }
        /// <summary>
        /// èµ·å§‹æ—¥æœŸ
        /// </summary>
        [SugarColumn(ColumnName = "FSTART_DATE", IsNullable = true)]
        public string? FStartDate { get; set; }
        /// <summary>
        /// æˆªæ­¢æ—¥æœŸ
        /// </summary>
        [SugarColumn(ColumnName = "FEND_DATE", IsNullable = true)]
        public string? FEndDate { get; set; }
    }
}
StandardPda/MES.Service/Modes/SalesOrderDetail.cs
@@ -11,103 +11,296 @@
    /// <summary>
    ///     SEQ_sales序列
    /// </summary>
    [SugarColumn(ColumnName = "ID", OracleSequenceName = "SEQ_sales",
        IsPrimaryKey = true)]
    [SugarColumn(ColumnName = "ID", OracleSequenceName = "SALES_ORDER_DETAIL_ID", IsPrimaryKey = true)]
    public decimal Id { get; set; }
    /// <summary>
    ///     è®¢å•单号
    /// </summary>
    [SugarColumn(ColumnName = "ORDER_ID")]
    public string OrderId { get; set; }
    /// <summary>
    ///     åºå·
    /// </summary>
    [SugarColumn(ColumnName = "LINE_NUMBER")]
    public long? LineNumber { get; set; }
    /// <summary>
    ///     äº§å“ç¼–码
    /// </summary>
    [SugarColumn(ColumnName = "PRODUCT_CODE")]
    public string ProductCode { get; set; }
    /// <summary>
    ///     äº§å“åç§°
    /// </summary>
    [SugarColumn(ColumnName = "PRODUCT_NAME")]
    public string ProductName { get; set; }
    /// <summary>
    ///     äº§å“è§„æ ¼
    /// </summary>
    [SugarColumn(ColumnName = "PRODUCT_SPEC")]
    public string ProductSpec { get; set; }
    /// <summary>
    ///     é¢„交货日期
    /// </summary>
    [SugarColumn(ColumnName = "SCHEDULED_DELIVERY_DATE")]
    public DateTime? ScheduledDeliveryDate { get; set; }
    /// <summary>
    ///     è®¢å•数量
    /// </summary>
    [SugarColumn(ColumnName = "ORDER_QUANTITY")]
    public decimal? OrderQuantity { get; set; }
    /// <summary>
    ///     å•位
    /// </summary>
    [SugarColumn(ColumnName = "UNIT")]
    public string Unit { get; set; }
    /// <summary>
    ///     å•ä»·
    /// </summary>
    [SugarColumn(ColumnName = "UNIT_PRICE")]
    public decimal? UnitPrice { get; set; }
    /// <summary>
    ///     é‡‘额
    /// </summary>
    [SugarColumn(ColumnName = "AMOUNT")]
    public decimal? Amount { get; set; }
    /// <summary>
    ///     å®¢æˆ·äº§å“ç¼–码
    /// </summary>
    [SugarColumn(ColumnName = "CUSTOMER_PRODUCT_CODE")]
    public string CustomerProductCode { get; set; }
    /// <summary>
    ///     å·²äº¤è´§æ•°
    /// </summary>
    [SugarColumn(ColumnName = "DELIVERED_QUANTITY")]
    public decimal? DeliveredQuantity { get; set; }
    /// <summary>
    ///     ç»“束
    /// </summary>
    [SugarColumn(ColumnName = "IS_CLOSED")]
    public string IsClosed { get; set; }
    /// <summary>
    ///     å¤‡æ³¨
    /// </summary>
    [SugarColumn(ColumnName = "REMARKS")]
    public string Remarks { get; set; }
    /// <summary>
    ///     ERPID
    /// </summary>
    [SugarColumn(ColumnName = "ERP_ID")]
    public string ErpId { get; set; }
    public decimal? ErpID { get; set; }
    /// <summary>
    ///     ERP头ID
    /// </summary>
    [SugarColumn(ColumnName = "ERP_HEAD_ID")]
    public string ErpHeadId { get; set; }
    [SugarColumn(ColumnName = "E_HID")]
    public decimal? EHID { get; set; }
    /// <summary>
    ///     ç‰©æ–™ç¼–码
    /// </summary>
    [SugarColumn(ColumnName = "MATERIAL_ID")]
    public string? MaterialId { get; set; }
    /// <summary>
    ///     é”€å”®å•位
    /// </summary>
    [SugarColumn(ColumnName = "UNIT_ID")]
    public string? UnitId { get; set; }
    /// <summary>
    ///     é”€å”®æ•°é‡
    /// </summary>
    [SugarColumn(ColumnName = "QTY")]
    public decimal? Qty { get; set; }
    /// <summary>
    ///     è®¡ä»·å•位
    /// </summary>
    [SugarColumn(ColumnName = "PRICE_UNIT_ID")]
    public string? PriceUnitId { get; set; }
    /// <summary>
    ///     è®¡ä»·æ•°é‡
    /// </summary>
    [SugarColumn(ColumnName = "PRICE_UNIT_QTY")]
    public decimal? PriceUnitQty { get; set; }
    /// <summary>
    ///     è¦è´§æ—¥æœŸ
    /// </summary>
    [SugarColumn(ColumnName = "DELIVERY_DATE")]
    public DateTime? DeliveryDate { get; set; }
    /// <summary>
    ///     æ˜¯å¦èµ å“
    /// </summary>
    [SugarColumn(ColumnName = "IS_FREE")]
    public decimal? IsFree { get; set; }
    /// <summary>
    ///     è´§ä¸»ç±»åž‹
    /// </summary>
    [SugarColumn(ColumnName = "OWNER_TYPE_ID")]
    public string? OwnerTypeId { get; set; }
    /// <summary>
    ///     è´§ä¸»
    /// </summary>
    [SugarColumn(ColumnName = "OWNER_ID")]
    public string? OwnerId { get; set; }
    /// <summary>
    ///     å¤‡æ³¨
    /// </summary>
    [SugarColumn(ColumnName = "ENTRY_NOTE")]
    public string? EntryNote { get; set; }
    /// <summary>
    ///     è®¡åˆ’跟踪号
    /// </summary>
    [SugarColumn(ColumnName = "MTO_NO")]
    public string? MtoNo { get; set; }
    /// <summary>
    ///     æ‰¹å·
    /// </summary>
    [SugarColumn(ColumnName = "LOT")]
    public string? Lot { get; set; }
    /// <summary>
    ///     å‘货上限
    /// </summary>
    [SugarColumn(ColumnName = "DELIVERY_MAX_QTY")]
    public decimal? DeliveryMaxQty { get; set; }
    /// <summary>
    ///     å‘货下限
    /// </summary>
    [SugarColumn(ColumnName = "DELIVERY_MIN_QTY")]
    public decimal? DeliveryMinQty { get; set; }
    /// <summary>
    ///     è¶…发控制单位
    /// </summary>
    [SugarColumn(ColumnName = "OUT_LMT_UNIT_ID")]
    public string? OutLmtUnitId { get; set; }
    /// <summary>
    ///     ä¸šåС关闭
    /// </summary>
    [SugarColumn(ColumnName = "MRP_CLOSE_STATUS")]
    public string? MrpCloseStatus { get; set; }
    /// <summary>
    ///     ä¸šåŠ¡ç»ˆæ­¢
    /// </summary>
    [SugarColumn(ColumnName = "MRP_TERMINATE_STATUS")]
    public string? MrpTerminateStatus { get; set; }
    /// <summary>
    ///     ç»ˆæ­¢æ—¥æœŸ
    /// </summary>
    [SugarColumn(ColumnName = "TERMINATE_DATE")]
    public DateTime? TerminateDate { get; set; }
    /// <summary>
    ///     ç»ˆæ­¢äºº
    /// </summary>
    [SugarColumn(ColumnName = "TERMINATER_ID")]
    public string? TerminaterId { get; set; }
    /// <summary>
    ///     æºå•类型
    /// </summary>
    [SugarColumn(ColumnName = "SRC_TYPE")]
    public string? SrcType { get; set; }
    /// <summary>
    ///     æºå•单号
    /// </summary>
    [SugarColumn(ColumnName = "SRC_BILL_NO")]
    public string? SrcBillNo { get; set; }
    /// <summary>
    ///     ç´¯è®¡å‘货通知数量
    /// </summary>
    [SugarColumn(ColumnName = "DELI_QTY")]
    public decimal? DeliQty { get; set; }
    /// <summary>
    ///     ç´¯è®¡å‡ºåº“数量
    /// </summary>
    [SugarColumn(ColumnName = "STOCK_OUT_QTY")]
    public decimal? StockOutQty { get; set; }
    /// <summary>
    ///     ç´¯è®¡é€€è´§é€šçŸ¥æ•°é‡ï¼ˆé”€å”®åŸºæœ¬ï¼‰
    /// </summary>
    [SugarColumn(ColumnName = "BASE_RET_NOTICE_QTY")]
    public decimal? BaseRetNoticeQty { get; set; }
    /// <summary>
    ///     ç´¯è®¡é€€è´§æ•°é‡ï¼ˆé”€å”®åŸºæœ¬ï¼‰
    /// </summary>
    [SugarColumn(ColumnName = "BASE_RETURN_QTY")]
    public decimal? BaseReturnQty { get; set; }
    /// <summary>
    ///     å‰©ä½™æœªå‡ºæ•°é‡ï¼ˆé”€å”®åŸºæœ¬ï¼‰
    /// </summary>
    [SugarColumn(ColumnName = "BASE_REMAIN_OUT_QTY")]
    public decimal? BaseRemainOutQty { get; set; }
    /// <summary>
    ///     ç´¯è®¡åº”收数量(销售基本)
    /// </summary>
    [SugarColumn(ColumnName = "BASEARQTY")]
    public decimal? BASEARQTY { get; set; }
    /// <summary>
    ///     é”€å”®è®¢å•号
    /// </summary>
    [SugarColumn(ColumnName = "SALES_ORDER")]
    public string? SalesOrder { get; set; }
    /// <summary>
    ///    å®¢æˆ·è®¢å•号
    /// </summary>
    [SugarColumn(ColumnName = "CUST_ORDER")]
    public string? CustOrder { get; set; }
    /// <summary>
    ///    é”€å”®åˆåŒç¼–号
    /// </summary>
    [SugarColumn(ColumnName = "SALES_CONTRACT_NO")]
    public string? SalesContractNo { get; set; }
    /// <summary>
    ///    æˆå“æ–™å·
    /// </summary>
    [SugarColumn(ColumnName = "ITEM_NO")]
    public string? ItemNo { get; set; }
    /// <summary>
    ///    æˆå“åç§°
    /// </summary>
    [SugarColumn(ColumnName = "ITEM_NAME")]
    public string? ItemName { get; set; }
    /// <summary>
    ///     å®¢æˆ·
    /// </summary>
    [SugarColumn(ColumnName = "CUST_ID")]
    public string? CustId { get; set; }
    /// <summary>
    ///    é‡‡è´­åˆ°è´§æ—¥æœŸ
    /// </summary>
    [SugarColumn(ColumnName = "ARRIVAL_DATE")]
    public DateTime? ArrivalDate { get; set; }
    /// <summary>
    ///     å®¢æˆ·ç‰©æ–™è§„格型号
    /// </summary>
    [SugarColumn(ColumnName = "ITEM_MODEL")]
    public string? ItemModel { get; set; }
    /// <summary>
    ///     è®¢å•来源
    /// </summary>
    [SugarColumn(ColumnName = "DDLY")]
    public string? Ddly { get; set; }
    /// <summary>
    /// è¡Œå·
    /// </summary>
    [SugarColumn(ColumnName = "FLINE_NO", IsNullable = true)]
    public string? FLineNo { get; set; }
    /// <summary>
    /// è¡ŒçŠ¶æ€
    /// </summary>
    [SugarColumn(ColumnName = "FLINE_STATUS", IsNullable = true)]
    public string? FLineStatus { get; set; }
    /// <summary>
    /// æ‰©å±•字段
    /// </summary>
    [SugarColumn(ColumnName = "FEXTEND_FIELD", IsNullable = true)]
    public string? FExtendField { get; set; }
    /// <summary>
    /// å®¢æˆ·
    /// </summary>
    [SugarColumn(ColumnName = "FCUSTOMER", IsNullable = true)]
    public string? FCustomer { get; set; }
    /// <summary>
    /// æ”¶è´§ä½ç½®
    /// </summary>
    [SugarColumn(ColumnName = "FRECEIVE_LOCATION", IsNullable = true)]
    public string? FReceiveLocation { get; set; }
    /// <summary>
    /// ä¾›åº”组织
    /// </summary>
    [SugarColumn(ColumnName = "FSUPPLY_ORG", IsNullable = true)]
    public string? FSupplyOrg { get; set; }
    /// <summary>
    /// éƒ¨é—¨
    /// </summary>
    [SugarColumn(ColumnName = "FDEPARTMENT", IsNullable = true)]
    public string? FDepartment { get; set; }
    /// <summary>
    /// ä¸šåŠ¡å‘˜
    /// </summary>
    [SugarColumn(ColumnName = "FSALES_PERSON", IsNullable = true)]
    public string? FSalesPerson { get; set; }
    /// <summary>
    /// é¡¹ç›®
    /// </summary>
    [SugarColumn(ColumnName = "FPROJECT", IsNullable = true)]
    public string? FProject { get; set; }
    /// <summary>
    /// éœ€æ±‚分类
    /// </summary>
    [SugarColumn(ColumnName = "FDEMAND_CATEGORY", IsNullable = true)]
    public string? FDemandCategory { get; set; }
}
StandardPda/MES.Service/Modes/SalesReturnNotice.cs
@@ -1,83 +1,240 @@
using SqlSugar;
namespace MES.Service.Modes;
/// <summary>
///     é”€å”®é€€è´§é€šçŸ¥å•表
/// </summary>
[SugarTable("SALES_RETURN_NOTICE")]
public class SalesReturnNotice
using System;
using System.Collections.Generic;
using System.Linq;
using SqlSugar;
namespace MES.Service.Modes
{
    /// <summary>
    ///     SEQ_sales
    /// </summary>
    [SugarColumn(ColumnName = "ID", OracleSequenceName = "SEQ_sales",
        IsPrimaryKey = true)]
    public decimal Id { get; set; }
    /// é”€å”®é€€è´§é€šçŸ¥å•表
    ///</summary>
    [SugarTable("SALES_RETURN_NOTICE")]
    public class SalesReturnNotice
    {
        /// <summary>
        ///
        ///</summary>
        [SugarColumn(ColumnName = "ID", OracleSequenceName = "SEQ_SALES_RETURN_NOTICE", 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_DEPT")]
        public string SalesDept { get; set; }
        /// <summary>
        /// é€€è´§å®¢æˆ·
        ///</summary>
        [SugarColumn(ColumnName = "RETURN_CUSTOMER")]
        public string ReturnCustomer { get; set; }
        /// <summary>
        /// é€€è´§åŽŸå› 
        ///</summary>
        [SugarColumn(ColumnName = "RETURN_REASON")]
        public string ReturnReason { get; set; }
        /// <summary>
        /// äº¤è´§åœ°ç‚¹
        ///</summary>
        [SugarColumn(ColumnName = "DELIVERY_LOCATION")]
        public string DeliveryLocation { get; set; }
        /// <summary>
        /// åº“存部门
        ///</summary>
        [SugarColumn(ColumnName = "INVENTORY_DEPT")]
        public string InventoryDept { 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 = "SETTLE_PARTY")]
        public string SettleParty { 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>
        /// ERP头ID
        ///</summary>
        [SugarColumn(ColumnName = "ERP_ID")]
        public string ErpId { get; set; }
        /// <summary>
        /// å•据状态
        ///</summary>
        [SugarColumn(ColumnName = "BILL_STATUS")]
        public string BillStatus { get; set; }
    /// <summary>
    ///     åˆ¶å•人
    /// </summary>
    [SugarColumn(ColumnName = "CREATED_BY")]
    public string CreatedBy { get; set; }
        /// <summary>
        /// èŽ·å–æˆ–è®¾ç½®é€€å›žç±»åž‹
        /// </summary>
        [SugarColumn(ColumnName = "RETURN_TYPE")]
        public string ReturnType { get; set; }
    /// <summary>
    ///     å•据编号
    /// </summary>
    [SugarColumn(ColumnName = "DOCUMENT_ID")]
    public string DocumentId { get; set; }
        /// <summary>
        /// èŽ·å–æˆ–è®¾ç½®æ€»æ•°é‡
        /// </summary>
        [SugarColumn(ColumnName = "TOTAL_QUANTITY")]
        public decimal TotalQuantity { get; set; }
    /// <summary>
    ///     å®¡æ ¸äººåç§°
    /// </summary>
    [SugarColumn(ColumnName = "APPROVED_BY")]
    public string ApprovedBy { get; set; }
        /// <summary>
        /// èŽ·å–æˆ–è®¾ç½®æ¥æºå•æ®ç±»åˆ«
        /// </summary>
        [SugarColumn(ColumnName = "SOURCE_DOCUMENT_CATEGORY")]
        public string SourceDocumentCategory { get; set; }
    /// <summary>
    ///     åˆ¶å•/审核日期
    /// </summary>
    [SugarColumn(ColumnName = "CREATED_OR_APPROVED_DATE")]
    public DateTime? CreatedOrApprovedDate { get; set; }
        /// <summary>
        /// èŽ·å–æˆ–è®¾ç½®æºå•æ®
        /// </summary>
        [SugarColumn(ColumnName = "SOURCE_DOCUMENT")]
        public string SourceDocument { get; set; }
    /// <summary>
    ///     éƒ¨é—¨ä»£ç 
    /// </summary>
    [SugarColumn(ColumnName = "DEPARTMENT_CODE")]
    public string DepartmentCode { get; set; }
        /// <summary>
        /// èŽ·å–æˆ–è®¾ç½®è¡¥è´§ç»„ç»‡
        /// </summary>
        [SugarColumn(ColumnName = "REPLENISHMENT_ORGANIZATION")]
        public string ReplenishmentOrganization { get; set; }
    /// <summary>
    ///     éƒ¨é—¨åç§°
    /// </summary>
    [SugarColumn(ColumnName = "DEPARTMENT_NAME")]
    public string DepartmentName { get; set; }
        /// <summary>
        /// èŽ·å–æˆ–è®¾ç½®å®¢æˆ·è¦æ±‚æ—¥æœŸ
        /// </summary>
        [SugarColumn(ColumnName = "CUSTOMER_REQUEST_DATE")]
        public DateTime CustomerRequestDate { get; set; }
    /// <summary>
    ///     è´­è´§å•位代码
    /// </summary>
    [SugarColumn(ColumnName = "PURCHASER_CODE")]
    public string PurchaserCode { get; set; }
        /// <summary>
        /// èŽ·å–æˆ–è®¾ç½®é€€è´§ä¸šåŠ¡å‘˜
        /// </summary>
        [SugarColumn(ColumnName = "RETURN_SALESMAN")]
        public string ReturnSalesman { get; set; }
    /// <summary>
    ///     è´­è´§å•位名称
    /// </summary>
    [SugarColumn(ColumnName = "PURCHASER_NAME")]
    public string PurchaserName { get; set; }
        /// <summary>
        /// èŽ·å–æˆ–è®¾ç½®é€€è´§éƒ¨é—¨
        /// </summary>
        [SugarColumn(ColumnName = "RETURN_DEPARTMENT")]
        public string ReturnDepartment { get; set; }
    /// <summary>
    ///     ä¸šåŠ¡å‘˜ä»£ç 
    /// </summary>
    [SugarColumn(ColumnName = "SALESPERSON_CODE")]
    public string SalespersonCode { get; set; }
        /// <summary>
        /// èŽ·å–æˆ–è®¾ç½®é€€è´§è¯´æ˜Ž
        /// </summary>
        [SugarColumn(ColumnName = "RETURN_DESCRIPTION")]
        public string ReturnDescription { get; set; }
    /// <summary>
    ///     ä¸šåŠ¡å‘˜åç§°
    /// </summary>
    [SugarColumn(ColumnName = "SALESPERSON_NAME")]
    public string SalespersonName { get; set; }
    /// <summary>
    ///     ERPID
    /// </summary>
    [SugarColumn(ColumnName = "ERP_ID")]
    public string ErpId { get; set; }
}
    }
}
StandardPda/MES.Service/Modes/SalesReturnNoticeDetail.cs
@@ -11,145 +11,225 @@
    /// <summary>
    ///     SEQ_sales
    /// </summary>
    [SugarColumn(ColumnName = "ID", OracleSequenceName = "SEQ_sales",
        IsPrimaryKey = true)]
    [SugarColumn(ColumnName = "ID", OracleSequenceName = "SEQ_SALES_RETURN_NOTICE_DETAIL", IsPrimaryKey = true)]
    public decimal Id { get; set; }
    /// <summary>
    ///     å•据行号
    ///     ç‰©æ–™ç¼–码
    /// </summary>
    [SugarColumn(ColumnName = "LINE_NUMBER")]
    public long? LineNumber { get; set; }
    [SugarColumn(ColumnName = "MATERIAL_ID")]
    public string MaterialId { get; set; }
    /// <summary>
    ///     äº§å“ä»£ç 
    ///     é”€å”®å•位
    /// </summary>
    [SugarColumn(ColumnName = "PRODUCT_CODE")]
    public string ProductCode { get; set; }
    [SugarColumn(ColumnName = "SALES_UNIT_ID")]
    public string SalesUnitId { get; set; }
    /// <summary>
    ///     äº§å“åç§°
    ///     é”€å”®æ•°é‡
    /// </summary>
    [SugarColumn(ColumnName = "PRODUCT_NAME")]
    public string ProductName { get; set; }
    [SugarColumn(ColumnName = "SALES_QUANTITY")]
    public decimal SalesQuantity { get; set; }
    /// <summary>
    ///     äº§å“è§„æ ¼
    ///     æ˜¯å¦èµ å“
    /// </summary>
    [SugarColumn(ColumnName = "PRODUCT_SPEC")]
    public string ProductSpec { get; set; }
    [SugarColumn(ColumnName = "IS_FREE")]
    public string IsFree { get; set; }
    /// <summary>
    ///     é‡‘额
    ///     é€€è´§æ—¥æœŸ
    /// </summary>
    [SugarColumn(ColumnName = "AMOUNT")]
    public decimal? Amount { get; set; }
    [SugarColumn(ColumnName = "RETURN_DATE")]
    public DateTime? ReturnDate { get; set; }
    /// <summary>
    ///     å•ä»·
    ///     ä»“库
    /// </summary>
    [SugarColumn(ColumnName = "UNIT_PRICE")]
    public decimal? UnitPrice { get; set; }
    [SugarColumn(ColumnName = "WAREHOUSE")]
    public string Warehouse { get; set; }
    /// <summary>
    ///     æ•°é‡
    ///     è®¡åˆ’跟踪号
    /// </summary>
    [SugarColumn(ColumnName = "QUANTITY")]
    public decimal? Quantity { get; set; }
    /// <summary>
    ///     å‡ºåº“数量
    /// </summary>
    [SugarColumn(ColumnName = "OUT_QUANTITY")]
    public decimal? OutQuantity { get; set; }
    [SugarColumn(ColumnName = "PLAN_TRACKING_NUMBER")]
    public string PlanTrackingNumber { get; set; }
    /// <summary>
    ///     æ‰¹å·
    /// </summary>
    [SugarColumn(ColumnName = "BATCH_NUMBER")]
    public string BatchNumber { get; set; }
    /// <summary>
    ///     é€€è´§æ•°é‡
    /// </summary>
    [SugarColumn(ColumnName = "RETURN_QUANTITY")]
    public decimal? ReturnQuantity { get; set; }
    /// <summary>
    ///     å‘货数量
    /// </summary>
    [SugarColumn(ColumnName = "DELIVERY_QUANTITY")]
    public decimal? DeliveryQuantity { get; set; }
    [SugarColumn(ColumnName = "LOT_NUMBER")]
    public string LotNumber { get; set; }
    /// <summary>
    ///     å¤‡æ³¨
    /// </summary>
    [SugarColumn(ColumnName = "REMARKS")]
    public string Remarks { get; set; }
    [SugarColumn(ColumnName = "NOTE")]
    public string Note { get; set; }
    /// <summary>
    ///     é”€å”®è®¢å•单号
    ///     é€€è´§ç±»åž‹
    /// </summary>
    [SugarColumn(ColumnName = "SALES_ORDER_ID")]
    public string SalesOrderId { get; set; }
    [SugarColumn(ColumnName = "RETURN_TYPE")]
    public string ReturnType { get; set; }
    /// <summary>
    ///     é”€å”®è®¢å•分录
    ///     åº“存单位
    /// </summary>
    [SugarColumn(ColumnName = "SALES_ORDER_ENTRY")]
    public string SalesOrderEntry { get; set; }
    [SugarColumn(ColumnName = "INVENTORY_UNIT")]
    public string InventoryUnit { get; set; }
    /// <summary>
    ///     é”€å”®è®¢å•ID
    ///     åº“存数量
    /// </summary>
    [SugarColumn(ColumnName = "SALES_ORDER_DETAIL_ID")]
    public string SalesOrderDetailId { get; set; }
    [SugarColumn(ColumnName = "INVENTORY_QUANTITY")]
    public decimal InventoryQuantity { get; set; }
    /// <summary>
    ///     åŸºæœ¬å•ä»·
    ///     è´§ä¸»ç±»åž‹
    /// </summary>
    [SugarColumn(ColumnName = "BASE_UNIT_PRICE")]
    public decimal? BaseUnitPrice { get; set; }
    [SugarColumn(ColumnName = "OWNER_TYPE_ID")]
    public string OwnerTypeId { get; set; }
    /// <summary>
    ///     åŸºæœ¬å•位数量
    ///     è´§ä¸»
    /// </summary>
    [SugarColumn(ColumnName = "BASE_UNIT_QUANTITY")]
    public decimal? BaseUnitQuantity { get; set; }
    [SugarColumn(ColumnName = "OWNER_ID")]
    public string OwnerId { get; set; }
    /// <summary>
    ///     ä»“库代码
    ///     æºå•类型
    /// </summary>
    [SugarColumn(ColumnName = "WAREHOUSE_CODE")]
    public string WarehouseCode { get; set; }
    [SugarColumn(ColumnName = "SOURCE_BILL_TYPE")]
    public string SourceBillType { get; set; }
    /// <summary>
    ///     ä»“库名称
    ///     æºå•单号
    /// </summary>
    [SugarColumn(ColumnName = "WAREHOUSE_NAME")]
    public string WarehouseName { get; set; }
    [SugarColumn(ColumnName = "SOURCE_BILL_NO")]
    public string SourceBillNo { get; set; }
    /// <summary>
    ///     åŸºæœ¬å•位出库数量
    ///     è®¢å•单号
    /// </summary>
    [SugarColumn(ColumnName = "BASE_UNIT_OUT_QUANTITY")]
    public decimal? BaseUnitOutQuantity { get; set; }
    [SugarColumn(ColumnName = "ORDER_BILL_NO")]
    public string OrderBillNo { get; set; }
    /// <summary>
    ///     å•位
    ///     ERP行ID
    /// </summary>
    [SugarColumn(ColumnName = "UNIT")]
    public string Unit { get; set; }
    /// <summary>
    ///     ERPID
    /// </summary>
    [SugarColumn(ColumnName = "ERP_ID")]
    public string ErpId { get; set; }
    [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>
    /// è¡Œå· / Line number
    /// </summary>
    [SugarColumn(ColumnName = "LINE_NUMBER", SqlParameterDbType = System.Data.DbType.Int32)]
    public int? FLineNumber { get; set; }
    /// <summary>
    /// è¡ŒçŠ¶æ€ / Line status (e.g. 'Active','Cancelled')
    /// </summary>
    [SugarColumn(ColumnName = "LINE_STATUS", Length = 50)]
    public string FLineStatus { get; set; }
    /// <summary>
    /// é€€æ¬¾å®¢æˆ·ç¼–号 / Refund customer ID
    /// </summary>
    [SugarColumn(ColumnName = "REFUND_CUSTOMER", Length = 100)]
    public string FRefundCustomer { get; set; }
    /// <summary>
    /// ä¾›åº”商编码 / Supplier code
    /// </summary>
    [SugarColumn(ColumnName = "SUPPLIER", Length = 100)]
    public string FSupplier { get; set; }
    /// <summary>
    /// å…è´¹å“ç±»åž‹ / Freebie type (Sample/Gift etc.)
    /// </summary>
    [SugarColumn(ColumnName = "FREEBIE_TYPE", Length = 50)]
    public string FFreebieType { get; set; }
    /// <summary>
    /// å…è´¹å“åŽŸå›  / Freebie reason description
    /// </summary>
    [SugarColumn(ColumnName = "FREEBIE_REASON", Length = 200)]
    public string FFreebieReason { get; set; }
    /// <summary>
    /// æºå¤´å•据行号 / Source document line number
    /// </summary>
    [SugarColumn(ColumnName = "SOURCE_DOC_LINE_NO", SqlParameterDbType = System.Data.DbType.Int32)]
    public int? FSourceDocLineNo { get; set; }
    /// <summary>
    /// æºå¤´å•据子行号 / Source document sub-line number
    /// </summary>
    [SugarColumn(ColumnName = "SOURCE_DOC_SUB_LINE_NO", SqlParameterDbType = System.Data.DbType.Int32)]
    public int? FSourceDocSubLineNo { get; set; }
    /// <summary>
    /// æ¥æºå•据类型 / Source document type (PO/SO/Invoice etc.)
    /// </summary>
    [SugarColumn(ColumnName = "SOURCE_DOC_TYPE", Length = 50)]
    public string FSourceDocType { get; set; }
    /// <summary>
    /// åŽŸå§‹å•æ®è¡Œå· / Original document line number
    /// </summary>
    [SugarColumn(ColumnName = "ORIGINAL_DOC_LINE_NO", SqlParameterDbType = System.Data.DbType.Int32)]
    public int? FOriginalDocLineNo { get; set; }
    /// <summary>
    /// è¡¥è´§ç»„织代码 / Replenishment organization code
    /// </summary>
    [SugarColumn(ColumnName = "REPLENISH_ORG", Length = 50)]
    public string FReplenishOrg { get; set; }
    /// <summary>
    /// æ”¶è´§ç»„织代码 / Receiving organization code
    /// </summary>
    [SugarColumn(ColumnName = "RECEIVING_ORG", Length = 50)]
    public string FReceivingOrg { get; set; }
    /// <summary>
    /// åŽŸä¸šåŠ¡å‘˜ID / Original salesman ID
    /// </summary>
    [SugarColumn(ColumnName = "ORIGINAL_SALESMAN", Length = 50)]
    public string FOriginalSalesman { get; set; }
    /// <summary>
    /// åŽŸéƒ¨é—¨ä»£ç  / Original department code
    /// </summary>
    [SugarColumn(ColumnName = "ORIGINAL_DEPT", Length = 50)]
    public string FOriginalDept { get; set; }
    /// <summary>
    /// é¡¹ç›®ç¼–号 / Project number
    /// </summary>
    [SugarColumn(ColumnName = "PROJECT", Length = 100)]
    public string FProject { get; set; }
    /// <summary>
    /// é€€è´§åŽŸå› åˆ†ç±» / Return reason category
    /// </summary>
    [SugarColumn(ColumnName = "RETURN_REASON", Length = 200)]
    public string FReturnReason { get; set; }
    /// <summary>
    /// é€€è´§è¯¦ç»†è¯´æ˜Ž / Detailed return description
    /// <example>货物在运输过程中发生破损</example>
    /// </summary>
    [SugarColumn(ColumnName = "RETURN_DESCRIPTION", Length = 4000)]
    public string FReturnDescription { get; set; }
}
StandardPda/MES.Service/service/BasicData/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
 }
}
StandardPda/MES.Service/service/BasicData/SalesDeliveryNoticeManager.cs
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,279 @@
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)
        {
            var decimals = mesSalesDeliveryDatas.Select(s => s.Id).ToArray();
            var update = base.DeleteById(mesSalesDelivery.Id);
            var 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, //销售部门
                //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.FSalerId,//销售员
                //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 //销售组织
                FSourceCategory= erpDto.FSourceCategory,
                FSourceDocument= erpDto.FSourceDocument,
                FDeliveryDate = erpDto.FDeliveryDate,
                FProject = erpDto.FProject,
                FCustomerPo = erpDto.FCustomerPo,
                FShippingPolicy = erpDto.FShippingPolicy,
                FShippingPort = erpDto.FShippingPort,
                FDestinationPort = erpDto.FDestinationPort,
                FReceiverContactID = erpDto.FReceiverContactID,
                FEntryNote = erpDto.FEntryNote,
                FVersionNo= erpDto.FVersionNo,
                FBusinessType= erpDto.FBusinessType,
                FHEADLOCID= erpDto.FHEADLOCID,
                FCustId = erpDto.FCustId,
                FNote = erpDto.FNote
            };
            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//备注
                    FDeliveryDate= erpDto.FDeliveryDate,
                    FMapId= erpDto.FMapId,
                    FMapName = erpDto.FMapName,
                    FMapId2 = erpDto.FMapId2,
                    FProject= erpDto.FProject,
                    FStorageLocation = erpDto.FStorageLocation,
                    FFreeItemType = erpDto.FFreeItemType,
                    FBodyNote = erpDto.FBodyNote,
                    FAvailableStock = erpDto.FAvailableStock,
                    FInventoryQueryTime = erpDto.FInventoryQueryTime,
                    FLineStatus= erpDto.FLineStatus,
                    FReceiveAddressFull= erpDto.FReceiveAddressFull,
                    FReceiverContact= erpDto.FReceiverContact,
                    FReturnExchangeAllowed = erpDto.FReturnExchangeAllowed,
                    FOutsourcedProcessQty = erpDto.FOutsourcedProcessQty,
                    FAvailableDate = erpDto.FAvailableDate,
                    FCommitmentDate= erpDto.FCommitmentDate,
                    FCustomerConfirmShipDate= erpDto.FCustomerConfirmShipDate,
                    FPlannedOrg= erpDto.FPlannedOrg,
                    FVendorDirectShip = erpDto.FVendorDirectShip,
                    FSupplySource = erpDto.FSupplySource,
                    FSupplyType = erpDto.FSupplyType,
                    FSupplyOrg= erpDto.FSupplyOrg,
                    FSupplier= erpDto.FSupplier,
                    FShippingMethod= erpDto.FShippingMethod,
                    FMRPDR = erpDto.FMRPDR,
                    FDemandCategory = erpDto.FDemandCategory,
                    FInventoryPlanning = erpDto.FInventoryPlanning,
                    FLineRemark= erpDto.FLineRemark,
                    FSourceDocCategory = erpDto.FSourceDocCategory,
                    FSourceDocNo= erpDto.FSourceDocNo,
                    FSourceDocLineNo = erpDto.FSourceDocLineNo,
                    FLINE_NO = erpDto.FLINE_NO
                };
                var single = _SalesDeliveryDetailManager.GetSingle(it =>
                    it.ErpLineId == salesOrderSub.ErpLineId);
                if (single != null) salesOrderSub.Id = single.Id;
                salesOrderSubList.Add(salesOrderSub);
            }
            return salesOrderSubList;
        }
    }
}
StandardPda/MES.Service/service/BasicData/SalesOrderManager.cs
@@ -1,4 +1,7 @@
using MES.Service.DB;
using System.Data;
using System.Globalization;
using MES.Service.Dto.webApi;
using MES.Service.Modes;
using SqlSugar;
@@ -8,72 +11,152 @@
{
    //当前类已经继承了 Repository å¢žã€åˆ ã€æŸ¥ã€æ”¹çš„æ–¹æ³•
    //这里面写的代码不会给覆盖,如果要重新生成请删除 SalesOrderManager.cs
    #region æ•™å­¦æ–¹æ³•
    /// <summary>
    ///     ä»“储方法满足不了复杂业务需求,业务代码请在这里面定义方法
    /// </summary>
    public void Study()
    private readonly SalesOrderDetailManager _SalesOrderDetailManager = new();
    //ErpSalesOrder
    public bool Save(ErpSalesOrder SalesOrder)
    {
        /*********查询*********/
        var erpSalesOrderDto = SalesOrder.OrderDto;
        var mesSalesOrder = ConvertErpToSalesOrder(SalesOrder.OrderDto);
        var mesSalesOrderDatas = ConvertErpToSalesOrderDetail(SalesOrder.Items);
        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()); // åˆ†é¡µæŸ¥è¯¢åŠ æŽ’åº
        Console.Write(p.TotalCount); //返回总数
        var conModels = new List<IConditionalModel>(); //组装条件查询作为条件实现 åˆ†é¡µæŸ¥è¯¢åŠ æŽ’åº
        conModels.Add(new ConditionalModel
        return UseTransaction(db =>
        {
            FieldName = typeof(SalesOrder).GetProperties()[0].Name,
            ConditionalType = ConditionalType.Equal,
            FieldValue = "1"
        }); //id=1
        var data7 = base.GetPageList(conModels, p, it => SqlFunc.GetRandom());
        AsQueryable().Where(x => 1 == 1)
            .ToList(); //支持了转换成queryable,我们可以用queryable实现复杂功能
        /*********插入*********/
        var insertData = new SalesOrder(); //测试参数
        var insertArray = new[] { insertData };
        base.Insert(insertData); //插入
        base.InsertRange(insertArray); //批量插入
        var id = base.InsertReturnIdentity(insertData); //插入返回自增列
        AsInsertable(insertData).ExecuteCommand(); //我们可以转成 Insertable实现复杂插入
        /*********更新*********/
        var updateData = new SalesOrder(); //测试参数
        var updateArray = new[] { updateData }; //测试参数
        base.Update(updateData); //根据实体更新
        base.UpdateRange(updateArray); //批量更新
        //base.Update(it => new SalesOrder() { ClassName = "a", CreateTime = DateTime.Now }, it => it.id==1);// åªæ›´æ–°ClassName列和CreateTime列,其它列不更新,条件id=1
        AsUpdateable(updateData).ExecuteCommand(); //转成Updateable可以实现复杂的插入
        /*********删除*********/
        var deldata = new SalesOrder(); //测试参数
        base.Delete(deldata); //根据实体删除
        base.DeleteById(1); //根据主键删除
        base.DeleteById(new[] { 1, 2 }); //根据主键数组删除
        base.Delete(it => 1 == 2); //根据条件删除
        AsDeleteable().Where(it => 1 == 2)
            .ExecuteCommand(); //转成Deleteable实现复杂的操作
            switch (erpSalesOrderDto.Type)
            {
                case "3":
                    return DeleteData(db, mesSalesOrder, mesSalesOrderDatas) ? 1 : 0;
                case "2":
                case "4":
                case "5":
                    return SaveOrUpdateData(db, mesSalesOrder, mesSalesOrderDatas, erpSalesOrderDto.Type)  ? 1: 0;
                default:
                    throw new NotImplementedException( $"type没有{erpSalesOrderDto.Type}这个类型");
            }
        }) > 0;
    }
    #endregion
    private bool DeleteData(SqlSugarScope db, SalesOrder mesSalesOrder,List<SalesOrderDetail> mesSalesOrderDatas)
    {
        var decimals = mesSalesOrderDatas.Select(s => s.Id).ToArray();
        var update = base.DeleteById(mesSalesOrder.Id);
        var insertOrUpdate = db.Deleteable<SalesOrderDetail>().In(decimals).ExecuteCommand() > 0;
        if (update && insertOrUpdate)
        {
            return true;
        }
        throw new NotImplementedException("更新失败");
    }
    // æ’入或更新数据的方法
    private bool SaveOrUpdateData(SqlSugarScope db, SalesOrder mesSalesOrder,List<SalesOrderDetail> mesSalesOrderDatas,string type)
    {
        if (mesSalesOrder.Id != null)
        {
            base.DeleteById(mesSalesOrder.Id);
        }
        if (mesSalesOrderDatas.Count > 0)
        {
            db.Deleteable<SalesOrderDetail>().Where(s => s.EHID == mesSalesOrder.ErpID).ExecuteCommand();
        }
        var orUpdate = base.Insert(mesSalesOrder);
        var baOrUpdate = _SalesOrderDetailManager.InsertRange(mesSalesOrderDatas);
        if (orUpdate && baOrUpdate)
        {
            return true;
        }
        throw new NotImplementedException("插入或更新失败");
    }
    // æ‰¹é‡ä¿å­˜è®°å½•的方法
    public bool SaveList(List<ErpSalesOrder> salesOrder)
    {
        var result = salesOrder.Select(Save).ToList();
        return result.All(b => b);
    }
    private SalesOrder ConvertErpToSalesOrder(ErpSalesOrderDto 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 SalesOrder
        {
            BillNo = erpDto.FBillNo,
            ErpID = Convert.ToDecimal(erpDto.ErpID),
            FDate = ParseDateTime(erpDto.FDate) ?? null,
            BillTypeId = erpDto.FBillTypeID, // å•据类型
            DocumentStatus = erpDto.FDocumentStatus, // å•据状态
            CustId = erpDto.FCustId, // å®¢æˆ·
            SaleDeptId = erpDto.FSaleDeptId, // é”€å”®éƒ¨é—¨
            EntryNote = erpDto.FEntryNote, // å¤‡æ³¨
            FSalesPerson= erpDto.FSalesPerson,
            FProject= erpDto.FProject,
            FDemandCategory = erpDto.FDemandCategory,
            FStartDate = erpDto.FStartDate,
            FEndDate = erpDto.FEndDate
        };
        var single = base.GetSingle(it => it.ErpID == Convert.ToDecimal(erpDto.ErpID));
        if (single != null)
        {
            salesOrder.Id = single.Id;
        }
        return salesOrder;
    }
    private List<SalesOrderDetail> ConvertErpToSalesOrderDetail(List<ErpSalesOrderDetailDto> erpDtoList)
    {
        var salesOrderSubList = new List<SalesOrderDetail>();
        foreach (var erpDto in erpDtoList)
        {
            var salesOrderSub = new SalesOrderDetail
            {
                ErpID = Convert.ToDecimal(erpDto.ErpID),
                EHID = Convert.ToDecimal(erpDto.EHID),
                MaterialId = erpDto.FMaterialId,
                Qty = Convert.ToDecimal(erpDto.FQty),
                PriceUnitId = erpDto.FPriceUnitId,
                DeliveryDate = Convert.ToDateTime(erpDto.FDeliveryDate),
                OwnerId = erpDto.FOwnerId,
                EntryNote = erpDto.FEntryNote,
                Lot = erpDto.FLot,
                ItemNo = erpDto.FMapId,
                FLineNo= erpDto.FLineNo,
                FLineStatus = erpDto.FLineStatus,
                FExtendField = erpDto.FExtendField,
                FCustomer = erpDto.FCustomer,
                FReceiveLocation= erpDto.FReceiveLocation,
                FSupplyOrg= erpDto.FSupplyOrg,
                FDepartment = erpDto.FDepartment,
                FSalesPerson = erpDto.FSalesPerson,
                FProject = erpDto.FProject,
                FDemandCategory = erpDto.FDemandCategory
            };
            var single = _SalesOrderDetailManager.GetSingle(it =>it.ErpID == Convert.ToDecimal(salesOrderSub.ErpID));
            if (single != null)
            {
                salesOrderSub.Id = single.Id;
            }
            salesOrderSubList.Add(salesOrderSub);
        }
        return salesOrderSubList;
    }
}
StandardPda/MES.Service/service/BasicData/SalesReturnNoticeDetailManager.cs
@@ -5,7 +5,7 @@
namespace MES.Service.service.BasicData;
public class
    SalesReturnNoticeDetailManager : Repository<SalesReturnNoticeDetail>
    SalesReturnDetailManager : Repository<SalesReturnNoticeDetail>
{
    //当前类已经继承了 Repository å¢žã€åˆ ã€æŸ¥ã€æ”¹çš„æ–¹æ³•
@@ -39,8 +39,7 @@
        conModels.Add(new ConditionalModel
        {
            FieldName = typeof(SalesReturnNoticeDetail).GetProperties()[0].Name,
            ConditionalType = ConditionalType.Equal,
            FieldValue = "1"
            ConditionalType = ConditionalType.Equal, FieldValue = "1"
        }); //id=1
        var data7 = base.GetPageList(conModels, p, it => SqlFunc.GetRandom());
StandardPda/MES.Service/service/BasicData/SalesReturnNoticeManager.cs
@@ -1,5 +1,10 @@
using MES.Service.DB;
using System.Data;
using System.Globalization;
using MES.Service.Dto.webApi;
using MES.Service.Modes;
using SqlSugar;
using DbType = System.Data.DbType;
namespace MES.Service.service.BasicData;
@@ -7,5 +12,201 @@
{
    //当前类已经继承了 Repository å¢žã€åˆ ã€æŸ¥ã€æ”¹çš„æ–¹æ³•
    //这里面写的代码不会给覆盖,如果要重新生成请删除 SalesReturnNoticeManager.cs
    private readonly SalesReturnDetailManager _SalesReturnDetailManager =
        new();
    //ErpSalesRerurn
    public bool Save(ErpSalesRerurn SalesReturn)
    {
        var erpSalesReturnDto = SalesReturn.OrderDto;
        var mesSalesReturn = ConvertErpToSalesReturn(SalesReturn.OrderDto);
        var mesSalesReturnDatas = ConvertErpToSalesReturnDetail(SalesReturn.Items);
        return UseTransaction(db =>
        {
            switch (erpSalesReturnDto.Type)
            {
                // case "2":
                //     return InsertData(db, mesSalesReturn, mesSalesReturnDatas,
                //         rohInErpRohIn.FBILLTYPE)
                //         ? 1
                //         : 0;
                case "3":
                    return UpdateData(db, mesSalesReturn, mesSalesReturnDatas) ? 1 : 0;
                case "2":
                case "4":
                    return SaveOrUpdateData(db, mesSalesReturn, mesSalesReturnDatas, erpSalesReturnDto.Type)
                        ? 1
                        : 0;
                default:
                    throw new NotImplementedException(
                        $"type没有{erpSalesReturnDto.Type}这个类型");
            }
        }) > 0;
    }
    private bool UpdateData(SqlSugarScope db, SalesReturnNotice mesSalesReturn,
        List<SalesReturnNoticeDetail> mesSalesReturnDatas)
    {
        var decimals = mesSalesReturnDatas.Select(s => s.Id).ToArray();
        var update = base.DeleteById(mesSalesReturn.Id);
        var insertOrUpdate = db
            .Deleteable<SalesReturnNoticeDetail>().In(decimals)
            .ExecuteCommand() > 0;
        if (update && insertOrUpdate) return true;
        throw new NotImplementedException("更新失败");
    }
    // æ’入或更新数据的方法
    private bool SaveOrUpdateData(SqlSugarScope db, SalesReturnNotice mesSalesReturn,
        List<SalesReturnNoticeDetail> mesSalesReturnDatas, string type)
    {
        if (mesSalesReturn.Id != null) base.DeleteById(mesSalesReturn.Id);
        if (mesSalesReturnDatas.Count > 0)
            db.Deleteable<SalesReturnNoticeDetail>()
                .Where(s => s.ErpHeadId == mesSalesReturn.ErpId).ExecuteCommand();
        var orUpdate = base.Insert(mesSalesReturn);
        var baOrUpdate = _SalesReturnDetailManager.InsertRange(mesSalesReturnDatas);
        if (orUpdate && baOrUpdate) return true;
        throw new NotImplementedException("插入或更新失败");
    }
    // æ‰¹é‡ä¿å­˜è®°å½•的方法
    public bool SaveList(List<ErpSalesRerurn> salesOrder)
    {
        var result = salesOrder.Select(Save).ToList();
        return result.All(b => b);
    }
    private SalesReturnNotice ConvertErpToSalesReturn(
        ErpSalesReturnDto 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 SalesReturnNotice
        {
            BillNo = erpDto.FBillNo,
            ErpId = erpDto.ErpID,
            FDate = ParseDateTime(erpDto.FDate) ?? null,
            BillType = erpDto.FBillTypeID, // å•据类型
            ReturnCustomer = erpDto.FRetcustId, // é€€è´§å®¢æˆ·
            ReturnReason = erpDto.FRetcustReason, // é€€è´§åŽŸå› 
            DeliveryLocation = erpDto.FHeadLocId, // äº¤è´§åœ°ç‚¹
            ReceiverContact = erpDto.FReceiveCusContact, // æ”¶è´§æ–¹è”系人
            ReceiverAddress = erpDto.FReceiveAddress, // æ”¶è´§æ–¹åœ°å€
            CreatedBy = erpDto.FCreatorId, // åˆ›å»ºäºº
            CreatedDate = ParseDateTime(erpDto.FCreateDate) ?? null, // åˆ›å»ºæ—¶é—´
            ApprovedBy = erpDto.FApproverId, // å®¡æ ¸äºº
            ApprovedDate = ParseDateTime(erpDto.FApproveDate) ?? null, // å®¡æ ¸æ—¥æœŸ
            BillStatus = erpDto.FDocumentStatus, //单据状态
            ReturnType= erpDto.ReturnType, // é€€å›žç±»åž‹
            TotalQuantity = erpDto.TotalQuantity, // æ€»æ•°é‡
            SourceDocumentCategory = erpDto.SourceDocumentCategory, // æ¥æºå•据类别
            SourceDocument = erpDto.SourceDocument, // æºå•据
            ReplenishmentOrganization= erpDto.ReplenishmentOrganization, // è¡¥è´§ç»„织
            CustomerRequestDate = erpDto.CustomerRequestDate,  // å®¢æˆ·è¦æ±‚日期
            ReturnSalesman= erpDto.ReturnSalesman, // é€€è´§é”€å”®å‘˜
            ReturnDescription = erpDto.ReturnDescription, // é€€è´§è¯´æ˜Ž
            ReturnDepartment = erpDto.ReturnDepartment // é€€è´§éƒ¨é—¨
        };
        var single = base.GetSingle(it => it.ErpId == erpDto.ErpID);
        if (single != null) salesOrder.Id = single.Id;
        return salesOrder;
    }
    private List<SalesReturnNoticeDetail> ConvertErpToSalesReturnDetail(
        List<ErpSalesReturnDetailDto> erpDtoList)
    {
        var salesOrderSubList =
            new List<SalesReturnNoticeDetail>();
        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 SalesReturnNoticeDetail
            {
                ErpLineId = erpDto.ErpID,//ERP行ID
                ErpHeadId = erpDto.EHID,//ERP头ID
                MaterialId = erpDto.FMaterialId,//物料编号
                //SalesUnitId = erpDto.FUnitID,//销售单位
                SalesQuantity = Convert.ToDecimal(erpDto.FQty),//销售数量
                //IsFree = erpDto.FIsFree,//是否赠品
                //ReturnDate = ParseDateTime(erpDto.FDeliverydate),//退货日期
                Warehouse = erpDto.FStockId,//仓库
                //PlanTrackingNumber = erpDto.FMtoNo,//计划跟踪号
                LotNumber = erpDto.FLot,//批号
                Note = erpDto.FEntryDescription,//备注
                //ReturnType = erpDto.FRmType,//退货类型
                //InventoryUnit = erpDto.FStockUnitID,//库存单位
                //InventoryQuantity = Convert.ToDecimal(erpDto.FStockQty),//库存数量
                //OwnerTypeId = erpDto.FOwnerTypeID,//货主类型
                OwnerId = erpDto.FOwnerId,//货主
                SourceBillType = erpDto.FSrcType,
                SourceBillNo = erpDto.FSrcBillNo,
                OrderBillNo = erpDto.FOrderNo,
                FLineNumber= erpDto.FLineNumber, // è¡Œå·
                FLineStatus= erpDto.FLineStatus, // è¡ŒçŠ¶æ€
                FRefundCustomer = erpDto.FRefundCustomer, // é€€æ¬¾å®¢æˆ·
                FSupplier = erpDto.FSupplier, // ä¾›åº”商
                FFreebieType = erpDto.FFreebieType, // å…è´¹å“ç±»åž‹
                FFreebieReason = erpDto.FFreebieReason, // å…è´¹å“åŽŸå› 
                FSourceDocLineNo = erpDto.FSourceDocLineNo, // æºå¤´å•据行号
                FSourceDocSubLineNo = erpDto.FSourceDocSubLineNo, // æºå¤´å•据子行号
                FSourceDocType = erpDto.FSourceDocType,// æºå¤´å•据类型
                FOriginalDocLineNo = erpDto.FOriginalDocLineNo,// åŽŸå§‹å•æ®è¡Œå·
                FReplenishOrg = erpDto.FReplenishOrg,// è¡¥è´§ç»„织
                FReceivingOrg = erpDto.FReceivingOrg,// æ”¶è´§ç»„织
                FOriginalSalesman = erpDto.FOriginalSalesman,// åŽŸå§‹é”€å”®å‘˜
                FOriginalDept = erpDto.FOriginalDept,// åŽŸå§‹éƒ¨é—¨
                FProject = erpDto.FProject, // é¡¹ç›®
                FReturnReason = erpDto.FReturnReason,// é€€è´§åŽŸå› 
                FReturnDescription = erpDto.FReturnDescription,// é€€è´§è¯´æ˜Ž
            };
            var single = _SalesReturnDetailManager.GetSingle(it =>
                it.ErpLineId == salesOrderSub.ErpLineId);
            if (single != null) salesOrderSub.Id = single.Id;
            salesOrderSubList.Add(salesOrderSub);
        }
        return salesOrderSubList;
    }
}
StandardPda/MES.Service/service/Warehouse/MesInvItemOutsManager.cs
@@ -231,7 +231,7 @@
            var itemIdLinkU9 = Db.Queryable<MesLinkU9>()
                .Where(s => s.TableType == "MES_ITEMS"
                            && s.U9Id == itemOutList.itemId).First();
                            && s.U9Id == itemOutList.itemId &&s.OrgId== "1002011210000095").First();
            if (mesLinkU9 == null)
            {
StandardPda/MESApplication/Controllers/BasicData/SalesDeliveryNoticeController.cs
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,276 @@
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/";
        /// <summary>
        /// é”€å”®äº¤ä»˜é€šçŸ¥ï¼ˆU9标准销售)
        /// </summary>
        /// <param name="salesOrder"></param>
        /// <returns></returns>
        [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);
            }
        }
    }
}
StandardPda/MESApplication/Controllers/BasicData/SalesOrderController.cs
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,263 @@
using System.Dynamic;
using MES.Service.Dto.webApi;
using Newtonsoft.Json;
using MES.Service.Modes;
using MES.Service.service;
using MES.Service.service.BasicData;
using MES.Service.util;
using Microsoft.AspNetCore.Mvc;
namespace MESApplication.Controllers.BasicData;
[ApiController]
[Route("api/[controller]")]
public class SalesOrderController : ControllerBase
{
    private readonly MessageCenterManager _manager = new();
    private readonly SalesOrderManager m = new();
    private readonly string METHOD = "POST";
    private readonly string TableName = "SALES_ORDER";
    private readonly string URL = "http://localhost:10054/api/SalesOrder/";
    /// <summary>
    /// é”€å”®è®¢å•(U9预测订单)
    /// </summary>
    /// <param name="salesOrder"></param>
    /// <returns></returns>
    [HttpPost("Save")]
    public ResponseResult Save(ErpSalesOrder 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<ErpSalesOrder> 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] SalesOrder 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] SalesOrder 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] SalesOrder 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);
        }
    }
}
StandardPda/MESApplication/Controllers/BasicData/SalesReturnNoticeController.cs
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,272 @@
using System.Dynamic;
using MES.Service.Dto.webApi;
using MES.Service.Modes;
using MES.Service.service;
using MES.Service.service.BasicData;
using MES.Service.util;
using Microsoft.AspNetCore.Mvc;
using Newtonsoft.Json;
namespace MESApplication.Controllers.BasicData;
[ApiController]
[Route("api/[controller]")]
public class SalesReturnNoticeController : ControllerBase
{
   private readonly MessageCenterManager _manager = new();
    private readonly SalesReturnNoticeManager m = new();
    private readonly string METHOD = "POST";
    private readonly string TableName = "SALES_RETURN_NOTICE";
    private readonly string URL = "http://localhost:10054/api/SalesReturnNotice/";
    /// <summary>
    /// é€€è´§é€šçŸ¥å•
    /// </summary>
    /// <param name="salesOrder"></param>
    /// <returns></returns>
    [HttpPost("Save")]
    public ResponseResult Save(ErpSalesRerurn 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<ErpSalesRerurn> 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] SalesReturnNotice 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] SalesReturnNotice 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] SalesReturnNotice 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);
        }
    }
}