111
啊鑫
2025-01-22 eb662f5360e6e2c3d6972f4921bc9bd526d81913
111
已添加5个文件
已修改12个文件
已删除7个文件
2674 ■■■■■ 文件已修改
StandardPda/MES.Service/Dto/webApi/ErpEmployeeInfo.cs 19 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
StandardPda/MES.Service/Dto/webApi/ErpItems.cs 50 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
StandardPda/MES.Service/Modes/EmployeeInfo.cs 62 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
StandardPda/MES.Service/Modes/EmployeeItem.cs 40 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
StandardPda/MES.Service/Modes/MesItems.cs 459 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
StandardPda/MES.Service/Modes/SysDepartment.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
StandardPda/MES.Service/service/BasicData/EmployeeInfoManager.cs 110 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
StandardPda/MES.Service/service/BasicData/MesItemsManager.cs 344 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
StandardPda/MES.Service/service/BasicData/SysDepartmentManager.cs 138 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
StandardPda/MESApplication/Controllers/BasicData/EmployeeInfoController.cs 269 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
StandardPda/MESApplication/Controllers/BasicData/MesDeliveryNoteDetails.cs 163 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
StandardPda/MESApplication/Controllers/BasicData/MesItemTypeController.cs 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
StandardPda/MESApplication/Controllers/BasicData/MesItemsController.cs 28 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
StandardPda/MESApplication/Controllers/BasicData/MesPositionController.cs 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
StandardPda/MESApplication/Controllers/BasicData/MesStaffController.cs 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
StandardPda/MESApplication/Controllers/BasicData/MesUnitController.cs 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
StandardPda/MESApplication/Controllers/BasicData/OrganizeController.cs 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
StandardPda/MESApplication/Controllers/BasicData/SalesOrderController.cs 162 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
StandardPda/MESApplication/Controllers/BasicData/SalesOrderDetailController.cs 162 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
StandardPda/MESApplication/Controllers/BasicData/SalesReturnNoticeController.cs 163 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
StandardPda/MESApplication/Controllers/BasicData/SalesReturnNoticeDetailController.cs 163 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
StandardPda/MESApplication/Controllers/BasicData/ShipmentDetailController.cs 162 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
StandardPda/MESApplication/Controllers/BasicData/ShipmentNoticeController.cs 162 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
StandardPda/MESApplication/Controllers/BasicData/SysDepartmentController.cs 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
StandardPda/MES.Service/Dto/webApi/ErpEmployeeInfo.cs
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,19 @@
namespace MES.Service.Dto.webApi;
public class ErpEmployeeInfo
{
    public string Id { get; set; }
    public string? Type { get; set; }
    public string? fNumber { get; set; }
    public string? fName { get; set; }
    public string? fPostDeptid { get; set; }
    public List<ErpEmployeeInfoDto>? OperatorTypes { get; set; }
    public string? FForbidStatus { get; set; }
    public string? FUseOrgId { get; set; }
    public string? FDocumentStatus { get; set; }
}
public class ErpEmployeeInfoDto
{
    public string? OperatorType { get; set; }
}
StandardPda/MES.Service/Dto/webApi/ErpItems.cs
@@ -6,55 +6,37 @@
    public string? Type { get; set; }
    public string? FNumber { get; set; }
    public string? FOldNumber { get; set; }
    public string? CatalogNo { get; set; }
    public string? FName { get; set; }
    public string? FSpecification { get; set; }
    public string? FBaseUnitId { get; set; }
    public double? FSafeStock { get; set; }
    public double? FMaxStock { get; set; }
    public double? FMinStock { get; set; }
    public double? FMinPackCount { get; set; }
    public string? FStockId { get; set; }
    /// <summary>
    ///     æŽ¥å£å­—段调整:已删除或不再使用PPBOM00019124字段。
    /// </summary>
    /// <remarks>
    ///     ä¿®æ”¹äººï¼šæ± å—骏
    ///     ä¿®æ”¹æ—¥æœŸï¼š2024-12-25
    ///     è¯´æ˜Žï¼šæ­¤å­—段已被删除或不再使用于当前接口中。
    ///     ä¿ç•™è¢«æ³¨é‡Šçš„代码以记录修改历史。
    /// </remarks>
    // public string? PPBOM00019124 { get; set; }
    public string? FMaterialGroup { get; set; }
    public string? FDescription { get; set; }
    public decimal? FFinishReceiptOverRate { get; set; }
    public decimal? FFinishReceiptShortRate { get; set; }
    public string? FIssueType { get; set; }
    public int? FIsBatchManage { get; set; }
    public string? FPurchaserId { get; set; }
    public string? FDefaultVendor { get; set; }
    public string? FPurchaseUnitId { get; set; }
    public string? FStoreUnitID { get; set; }
    public string? FSaleUnitId { get; set; }
    public string? FDocumentStatus { get; set; }
    public string? FForbidStatus { get; set; }
    public string? FErpClsID { get; set; }
    public string? FMfgPolicyId { get; set; }
    public string? FWorkShopId { get; set; }
    public string? FBOMUnitId { get; set; }
    public string? FPRODUCEUNITID { get; set; }
    public string? FIsKitting { get; set; }
    public string? FIsCoby { get; set; }
    public string? FOverControlMode { get; set; }
    public string? FSUBCONUNITID { get; set; }
    public string? FCreateOrgId { get; set; }
    public string? FUseOrgId { get; set; }
    public string? FLOSSPERCENT { get; set; }
    public string? FMnemonicCode { get; set; }
    public string? FExpPeriod { get; set; }
    //public string? FColor { get; set; }
    public string? F_MJBH { get; set; }
    public List<ErpDetail>? FUseOrgId { get; set; }
    public string? MaterialOutUomid { get; set; }
    public string? CreateBy { get; set; }
    public string? PubDescSeg38 { get; set; }
    public string? Description { get; set; }
    public string? PrivateDescSeg4 { get; set; }
    public string? PrivateDescSeg9 { get; set; }
    public string? IsDualQuantity { get; set; }
    public string? IsDualUom { get; set; }
    public string? IsMultyUom { get; set; }
    public string? IsVarRatio { get; set; }
    public string? ConverRatioRule { get; set; }
    public string? PrivateDescSeg11 { get; set; }
    public string? PrivateDescSeg7 { get; set; }
    public string? PrivateDescSeg2 { get; set; }
}
StandardPda/MES.Service/Modes/EmployeeInfo.cs
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,62 @@
using System;
using System.Collections.Generic;
using System.Linq;
using SqlSugar;
namespace MES.Service.Modes
{
    /// <summary>
    ///
    ///</summary>
    [SugarTable("EMPLOYEE_INFO")]
    public class EmployeeInfo
    {
        /// <summary>
        /// SEQ_EMP
        ///</summary>
        [SugarColumn(ColumnName = "ID", IsPrimaryKey = true)]
        public decimal Id { get; set; }
        /// <summary>
        /// èŒå·¥å·¥å·
        ///</summary>
        [SugarColumn(ColumnName = "EMPLOYEE_NO")]
        public string? EmployeeNo { get; set; }
        /// <summary>
        /// èŒå·¥å§“名
        ///</summary>
        [SugarColumn(ColumnName = "EMPLOYEE_NAME")]
        public string? EmployeeName { get; set; }
        /// <summary>
        /// éƒ¨é—¨ç¼–码
        ///</summary>
        [SugarColumn(ColumnName = "DEPARTMENT_CODE")]
        public string? DepartmentCode { get; set; }
        /// <summary>
        /// ä¸šåŠ¡å‘˜ç±»åž‹
        ///</summary>
        [SugarColumn(ColumnName = "SALESMAN_TYPE")]
        public string? SalesmanType { get; set; }
        /// <summary>
        /// å•据状态
        ///</summary>
        [SugarColumn(ColumnName = "DOCUMENT_STATUS")]
        public string? DocumentStatus { get; set; }
        /// <summary>
        /// æ˜¯å¦ç¦ç”¨
        ///</summary>
        [SugarColumn(ColumnName = "IS_DISABLED")]
        public string? IsDisabled { get; set; }
        /// <summary>
        /// ç»„织
        ///</summary>
        [SugarColumn(ColumnName = "ORGANIZATION")]
        public string? Organization { get; set; }
    }
}
StandardPda/MES.Service/Modes/EmployeeItem.cs
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,40 @@
using System;
using System.Collections.Generic;
using System.Linq;
using SqlSugar;
namespace MES.Service.Modes
{
    /// <summary>
    ///
    ///</summary>
    [SugarTable("EMPLOYEE_ITEM")]
    public class EmployeeItem
    {
        /// <summary>
        ///
        ///</summary>
        [SugarColumn(ColumnName = "ID",
            OracleSequenceName = "SEQ_EMP",
            IsPrimaryKey = true)]
        public decimal Id { get; set; }
        /// <summary>
        /// info的id
        ///</summary>
        [SugarColumn(ColumnName = "EID")]
        public decimal? Eid { get; set; }
        /// <summary>
        /// 0=采购业务员, 1=销售业务员, 2=库管员, 3=拣货员, 4=理货员, 5=设计员, 6=计划员, 7=生产管理员, 8=统计员, 9=质检员, 10=成本会计, 11=收款员, 12=资产管理员, 13=其他, 14=设备管理员
        ///</summary>
        [SugarColumn(ColumnName = "E_TYPE")]
        public string? EType { get; set; }
        /// <summary>
        /// æ—¶é—´
        ///</summary>
        [SugarColumn(ColumnName = "CREATE_DATE")]
        public string? CreateDate { get; set; }
    }
}
StandardPda/MES.Service/Modes/MesItems.cs
@@ -9,393 +9,518 @@
public class MesItems
{
    /// <summary>
    ///     ç‰©æ–™ID
    /// </summary>
    /// ç‰©æ–™ID
    ///</summary>
    [SugarColumn(ColumnName = "ID", IsPrimaryKey = true)]
    public decimal Id { get; set; }
    /// <summary>
    ///     å·¥åŽ‚
    /// </summary>
    /// å·¥åŽ‚
    ///</summary>
    [SugarColumn(ColumnName = "FACTORY")]
    public string? Factory { get; set; }
    /// <summary>
    ///     å…¬å¸ç¼–号
    /// </summary>
    /// å…¬å¸ç¼–号
    ///</summary>
    [SugarColumn(ColumnName = "COMPANY")]
    public string? Company { get; set; }
    /// <summary>
    ///     ç‰©æ–™ç¼–码 = ERP物料编号||颜色编号
    /// </summary>
    /// ç‰©æ–™ç¼–码
    ///</summary>
    [SugarColumn(ColumnName = "ITEM_NO")]
    public string? ItemNo { get; set; }
    /// <summary>
    ///     ç‰©æ–™åç§°
    /// </summary>
    /// ç‰©æ–™åç§°
    ///</summary>
    [SugarColumn(ColumnName = "ITEM_NAME")]
    public string? ItemName { get; set; }
    /// <summary>
    ///     ç‰©æ–™ç®€ç§°
    /// </summary>
    /// ç‰©æ–™ç®€ç§°
    ///</summary>
    [SugarColumn(ColumnName = "ITEM_SNAME")]
    public string? ItemSname { get; set; }
    /// <summary>
    ///     è§„格型号
    /// </summary>
    /// è§„格型号
    ///</summary>
    [SugarColumn(ColumnName = "ITEM_MODEL")]
    public string? ItemModel { get; set; }
    /// <summary>
    ///     ç‰©æ–™æè¿°
    /// </summary>
    /// ç‰©æ–™æè¿°
    ///</summary>
    [SugarColumn(ColumnName = "ITEM_DESCRIPTION")]
    public string? ItemDescription { get; set; }
    /// <summary>
    ///     ç‰©æ–™å•位
    /// </summary>
    /// ç‰©æ–™å•位
    ///</summary>
    [SugarColumn(ColumnName = "ITEM_UNIT")]
    public string? ItemUnit { get; set; }
    /// <summary>
    ///     ç‰©æ–™ç±»åž‹
    /// </summary>
    /// ç‰©æ–™ç±»åž‹
    ///</summary>
    [SugarColumn(ColumnName = "ITEM_TYPE")]
    public string? ItemType { get; set; }
    /// <summary>
    ///     äº§å“ç‰ˆæœ¬
    /// </summary>
    /// äº§å“ç‰ˆæœ¬
    ///</summary>
    [SugarColumn(ColumnName = "ITEM_VERSION")]
    public string? ItemVersion { get; set; }
    /// <summary>
    ///     å®¢æˆ·ç¼–号
    /// </summary>
    /// å®¢æˆ·ç¼–号
    ///</summary>
    [SugarColumn(ColumnName = "CUST_NO")]
    public string? CustNo { get; set; }
    /// <summary>
    ///     åˆ›å»ºäºº
    /// </summary>
    /// åˆ›å»ºäºº
    ///</summary>
    [SugarColumn(ColumnName = "CREATE_BY")]
    public string? CreateBy { get; set; }
    /// <summary>
    ///     åˆ›å»ºæ—¶é—´
    /// </summary>
    /// åˆ›å»ºæ—¶é—´
    ///</summary>
    [SugarColumn(ColumnName = "CREATE_DATE")]
    public DateTime? CreateDate { get; set; }
    /// <summary>
    ///     æœ€åŽæ›´æ–°äºº
    /// </summary>
    /// æœ€åŽæ›´æ–°äºº
    ///</summary>
    [SugarColumn(ColumnName = "LASTUPDATE_BY")]
    public string? LastupdateBy { get; set; }
    /// <summary>
    ///     æœ€åŽæ›´æ–°æ—¶é—´
    /// </summary>
    /// æœ€åŽæ›´æ–°æ—¶é—´
    ///</summary>
    [SugarColumn(ColumnName = "LASTUPDATE_DATE")]
    public DateTime? LastupdateDate { get; set; }
    /// <summary>
    ///     æœ€ä½Žåº“å­˜
    /// </summary>
    /// æœ€ä½Žåº“å­˜
    ///</summary>
    [SugarColumn(ColumnName = "LOWLIMIT")]
    public double? Lowlimit { get; set; }
    /// <summary>
    ///     æœ€å¤§åº“å­˜
    /// </summary>
    /// å®‰å…¨åº“存量
    ///</summary>
    [SugarColumn(ColumnName = "Safe_Stock")]
    public double? SafeStock { get; set; }
    /// <summary>
    /// æœ€å¤§åº“å­˜
    ///</summary>
    [SugarColumn(ColumnName = "HIGHLIMIT")]
    public double? Highlimit { get; set; }
    /// <summary>
    ///     æœ€å°åŒ…装数
    /// </summary>
    /// æœ€å°åŒ…装数
    ///</summary>
    [SugarColumn(ColumnName = "PRD_PACK")]
    public double? PrdPack { get; set; }
    /// <summary>
    ///     è®¢å•单位
    /// </summary>
    /// è®¢å•单位
    ///</summary>
    [SugarColumn(ColumnName = "ORDERUNIT")]
    public string? Orderunit { get; set; }
    /// <summary>
    ///     é”€å”®å•位
    /// </summary>
    /// é”€å”®å•位
    ///</summary>
    [SugarColumn(ColumnName = "SALEUNIT")]
    public string? Saleunit { get; set; }
    /// <summary>
    ///     åº“房单位
    /// </summary>
    /// åº“房单位
    ///</summary>
    [SugarColumn(ColumnName = "STOREUNIT")]
    public string? Storeunit { get; set; }
    /// <summary>
    ///     ç”Ÿäº§å•位
    /// </summary>
    [SugarColumn(ColumnName = "PRODUCTUNIT")]
    public string? Productunit { get; set; }
    /// <summary>
    ///     ç‰©æ–™ID
    /// </summary>
    /// ç‰©æ–™ID
    ///</summary>
    [SugarColumn(ColumnName = "E_ITEM_ID")]
    public decimal? EItemId { get; set; }
    /// <summary>
    ///     ERP料号
    /// </summary>
    /// ERP料号
    ///</summary>
    [SugarColumn(ColumnName = "ERP_ITEM_NO")]
    public string? ErpItemNo { get; set; }
    /// <summary>
    ///     é»˜è®¤ä»“库
    /// </summary>
    /// é»˜è®¤ä»“库
    ///</summary>
    [SugarColumn(ColumnName = "DEPOT_CODE")]
    public string? DepotCode { get; set; }
    /// <summary>
    ///     ç‰©æ–™åˆ†ç±»ç¼–号
    /// </summary>
    /// ç‰©æ–™åˆ†ç±»ç¼–号
    ///</summary>
    [SugarColumn(ColumnName = "PPBOM00019124")]
    public string? Ppbom00019124 { get; set; }
    /// <summary>
    ///     ç‰©æ–™åˆ†ç»„
    /// </summary>
    /// ç‰©æ–™åˆ†ç»„
    ///</summary>
    [SugarColumn(ColumnName = "REMARKS")]
    public string? Remarks { get; set; }
    /// <summary>
    ///     é‡‡è´­å‘˜
    /// </summary>
    /// é‡‡è´­å‘˜
    ///</summary>
    [SugarColumn(ColumnName = "FPURCHASERID")]
    public string? Fpurchaserid { get; set; }
    /// <summary>
    ///     ç¦ç”¨çŠ¶æ€
    /// </summary>
    /// ç¦ç”¨çŠ¶æ€
    ///</summary>
    [SugarColumn(ColumnName = "FFORBIDSTATUS")]
    public string? Fforbidstatus { get; set; }
    /// <summary>
    ///     ç‰©æ–™åˆ†ç»„
    /// </summary>
    /// ç‰©æ–™åˆ†ç»„
    ///</summary>
    [SugarColumn(ColumnName = "FMATERIALGROUP")]
    public string? Fmaterialgroup { get; set; }
    /// <summary>
    ///     å®Œå·¥è¶…收比例
    /// </summary>
    /// å®Œå·¥è¶…收比例
    ///</summary>
    [SugarColumn(ColumnName = "FFINISHRECEIPTOVERRATE")]
    public decimal? Ffinishreceiptoverrate { get; set; }
    /// <summary>
    ///     å‘料方式
    /// </summary>
    /// å‘料方式
    ///</summary>
    [SugarColumn(ColumnName = "FISSUETYPE")]
    public string? Fissuetype { get; set; }
    /// <summary>
    ///     å¯ç”¨æ‰¹å·ç®¡ç†
    /// </summary>
    /// å¯ç”¨æ‰¹å·ç®¡ç†
    ///</summary>
    [SugarColumn(ColumnName = "FISBATCHMANAGE")]
    public decimal? Fisbatchmanage { get; set; }
    /// <summary>
    ///     é‡‡è´­å•位
    /// </summary>
    /// é‡‡è´­å•位
    ///</summary>
    [SugarColumn(ColumnName = "FPURCHASEUNITID")]
    public string? Fpurchaseunitid { get; set; }
    /// <summary>
    ///     åˆ›å»ºç»„织
    /// </summary>
    /// åˆ›å»ºç»„织
    ///</summary>
    [SugarColumn(ColumnName = "CREATE_ORG")]
    public decimal CreateOrg { get; set; }
    public decimal? CreateOrg { get; set; }
    /// <summary>
    ///     ä½¿ç”¨ç»„织
    /// </summary>
    /// ä½¿ç”¨ç»„织
    ///</summary>
    [SugarColumn(ColumnName = "USE_ORG")]
    public decimal UseOrg { get; set; }
    public string? UseOrg { get; set; }
    /// <summary>
    ///     æŸè€—率
    /// </summary>
    /// æŸè€—率
    ///</summary>
    [SugarColumn(ColumnName = "LOSS_PERCENT")]
    public string? LossPercent { get; set; }
    /// <summary>
    ///     åŠ©è®°ç 
    /// </summary>
    /// åŠ©è®°ç 
    ///</summary>
    [SugarColumn(ColumnName = "MNEMONIC_CODE")]
    public string? MnemonicCode { get; set; }
    /// <summary>
    ///     ä¿è´¨æœŸ
    /// </summary>
    /// ä¿è´¨æœŸ
    ///</summary>
    [SugarColumn(ColumnName = "EXP_PERIOD")]
    public string? ExpPeriod { get; set; }
    /// <summary>
    ///     ç”Ÿäº§è½¦é—´
    /// </summary>
    /// ç”Ÿäº§è½¦é—´
    ///</summary>
    [SugarColumn(ColumnName = "PRODUCTION_WORKSHOP")]
    public string? ProductionWorkshop { get; set; }
    /// <summary>
    ///     ç‰©æ–™å±žæ€§
    /// </summary>
    /// ç‰©æ–™å±žæ€§ 0=模型,1=按订单拣货,2=按订单装配,3=可选类,4=委外加工件,
    /// 5=工序委外件,6=虚拟,7=计划,8=系列,9=采购件,10=制造件,
    /// 11=最终装配件,12=套件,13=工艺,14=低值易耗品,15=商品,
    /// 16=杂项料品,17=服务,18=资产,19=备件,20=配方,
    /// 21=重复,22=费用性料品
    ///</summary>
    [SugarColumn(ColumnName = "MATERIAL_PROPERTI")]
    public string? MaterialProperti { get; set; }
    /// <summary>
    ///     ç”Ÿäº§å•位
    /// </summary>
    /// ç”Ÿäº§å•位
    ///</summary>
    [SugarColumn(ColumnName = "PRODUCE_UNIT")]
    public string? ProduceUnit { get; set; }
    /// <summary>
    ///     å§”外单位
    /// </summary>
    /// å§”外单位
    ///</summary>
    [SugarColumn(ColumnName = "SUBCON_UNIT")]
    public string? SubconUnit { get; set; }
    /// <summary>
    ///     å›¾ç‰‡1
    /// </summary>
    /// å›¾ç‰‡1
    ///</summary>
    [SugarColumn(ColumnName = "BZ06")]
    public string? Bz06 { get; set; }
    /// <summary>
    ///     å›¾ç‰‡2
    /// </summary>
    /// å›¾ç‰‡2
    ///</summary>
    [SugarColumn(ColumnName = "BZ07")]
    public string? Bz07 { get; set; }
    /// <summary>
    ///     å›¾ç‰‡3
    /// </summary>
    /// å›¾ç‰‡3
    ///</summary>
    [SugarColumn(ColumnName = "BZ08")]
    public string? Bz08 { get; set; }
    /// <summary>
    ///     å›¾ç‰‡4
    /// </summary>
    /// å›¾ç‰‡4
    ///</summary>
    [SugarColumn(ColumnName = "BZ09")]
    public string? Bz09 { get; set; }
    /// <summary>
    ///     å›¾ç‰‡5
    /// </summary>
    /// å›¾ç‰‡5
    ///</summary>
    [SugarColumn(ColumnName = "BZ10")]
    public string? Bz10 { get; set; }
    /// <summary>
    ///     QC分组ID
    /// </summary>
    /// QC分组ID
    ///</summary>
    [SugarColumn(ColumnName = "QC_TEAMID")]
    public string? QcTeamid { get; set; }
    /// <summary>
    ///     ç‰©æ–™ID
    /// </summary>
    /// ç‰©æ–™ID
    ///</summary>
    [SugarColumn(ColumnName = "ITEM_ID")]
    public decimal? ItemId { get; set; }
    /// <summary>
    ///     é¢œè‰²
    /// </summary>
    /// é¢œè‰²
    ///</summary>
    [SugarColumn(ColumnName = "COLOR_NAME")]
    public string? ColorName { get; set; }
    [SugarColumn(IsIgnore = true)] public string? Type { get; set; }
    /// <summary>
    /// è®¾å¤‡
    ///</summary>
    [SugarColumn(ColumnName = "F_WWC_TEXT8")]
    public string? FWwcText8 { get; set; }
    /// <summary>
    ///     æŽ¥å£å­—段调整:标准版接口新增字段。
    /// </summary>
    /// <remarks>
    ///     ä¿®æ”¹äººï¼š
    ///     <池南骏>
    ///         ä¿®æ”¹æ—¥æœŸï¼š<2024-12-31>
    ///         ä¿®æ”¹è¯´æ˜Žï¼š
    ///         - åŽŸä»£ç ï¼šç©º
    ///         - æ–°å¢žï¼š
    /// </remarks>
    /// <summary>
    ///     æ—§ç‰©æ–™ç¼–码
    /// </summary>
    [SugarColumn(ColumnName = "FOLDNUMBER")]
    public string? FOLDNUMBER { get; set; }
    /// åŠŸçŽ‡
    ///</summary>
    [SugarColumn(ColumnName = "F_WWC_DECIMAL")]
    public string? FWwcDecimal { get; set; }
    /// <summary>
    ///     æœ€å°åº“å­˜
    /// </summary>
    [SugarColumn(ColumnName = "FMINSTOCK")]
    public double? FMINSTOCK { get; set; }
    /// å•小时产能
    ///</summary>
    [SugarColumn(ColumnName = "F_WWC_DECIMAL1")]
    public string? FWwcDecimal1 { get; set; }
    /// <summary>
    ///     å…¥åº“欠收比例(%)
    /// </summary>
    [SugarColumn(ColumnName = "FFINISHRECEIPTSHORTRATE")]
    public decimal? FFINISHRECEIPTSHORTRATE { get; set; }
    /// äººæ•°
    ///</summary>
    [SugarColumn(ColumnName = "F_WWC_DECIMAL2")]
    public string? FWwcDecimal2 { get; set; }
    /// <summary>
    ///     é»˜è®¤ä¾›åº”商
    /// </summary>
    [SugarColumn(ColumnName = "FDEFAULTVENDOR")]
    public string? FDEFAULTVENDOR { get; set; }
    /// äººå·¥å°æ—¶å·¥èµ„
    ///</summary>
    [SugarColumn(ColumnName = "F_WWC_DECIMAL3")]
    public string? FWwcDecimal3 { get; set; }
    /// <summary>
    ///     æ•°æ®çŠ¶æ€(Z=暂存,A=创建,B=审核中,C=已审核,D=重新审核)
    /// </summary>
    [SugarColumn(ColumnName = "FDOCUMENTSTATUS")]
    public string? FDOCUMENTSTATUS { get; set; }
    /// äººå·¥å®šé¢
    ///</summary>
    [SugarColumn(ColumnName = "F_WWC_DECIMAL4")]
    public string? FWwcDecimal4 { get; set; }
    /// <summary>
    ///     åˆ¶é€ ç­–ç•¥
    /// </summary>
    [SugarColumn(ColumnName = "FMFGPOLICYID")]
    public string? FMFGPOLICYID { get; set; }
    /// æ ‡å‡†äº§èƒ½
    ///</summary>
    [SugarColumn(ColumnName = "FBCN")]
    public string? Fbcn { get; set; }
    /// <summary>
    ///     å­é¡¹å•位
    /// </summary>
    [SugarColumn(ColumnName = "FBOMUNITID")]
    public string? FBOMUNITID { get; set; }
    /// é’¢ç½‘
    ///</summary>
    [SugarColumn(ColumnName = "FGW")]
    public string? Fgw { get; set; }
    /// <summary>
    ///     æ˜¯å¦å…³é”®ä»¶
    /// </summary>
    [SugarColumn(ColumnName = "FISKITTING")]
    public string? FISKITTING { get; set; }
    /// æ²»å…·
    ///</summary>
    [SugarColumn(ColumnName = "FYJ")]
    public string? Fyj { get; set; }
    /// <summary>
    ///     å¯ä¸ºè”副产品
    /// </summary>
    [SugarColumn(ColumnName = "FISCOBY")]
    public string? FISCOBY { get; set; }
    /// è®¾å¤‡
    ///</summary>
    [SugarColumn(ColumnName = "FSB")]
    public string? Fsb { get; set; }
    /// <summary>
    ///     è¶…发控制方式
    /// </summary>
    [SugarColumn(ColumnName = "FOVERCONTROLMODE")]
    public string? FOVERCONTROLMODE { get; set; }
    /// å›¾å·
    ///</summary>
    [SugarColumn(ColumnName = "F_WWC_TEXT1")]
    public string? FWwcText1 { get; set; }
    /// <summary>
    ///     æ¨¡å…·ç¼–号
    /// </summary>
    [SugarColumn(ColumnName = "F_MJBH")]
    public string? F_MJBH { get; set; }
    /// æ¨¡å…·ç¼–号
    ///</summary>
    [SugarColumn(ColumnName = "F_WWC_TEXT2")]
    public string? FWwcText2 { get; set; }
    /// <summary>
    /// æ¨¡å…·å‡ºæ•°
    ///</summary>
    [SugarColumn(ColumnName = "F_WWC_TEXT3")]
    public string? FWwcText3 { get; set; }
    /// <summary>
    /// æ³¨å¡‘周期
    ///</summary>
    [SugarColumn(ColumnName = "F_WWC_TEXT4")]
    public string? FWwcText4 { get; set; }
    /// <summary>
    /// å•双色
    ///</summary>
    [SugarColumn(ColumnName = "F_WWC_TEXT5")]
    public string? FWwcText5 { get; set; }
    /// <summary>
    /// æ³¨å¡‘件吨位
    ///</summary>
    [SugarColumn(ColumnName = "F_WWC_TEXT6")]
    public string? FWwcText6 { get; set; }
    /// <summary>
    /// å¤–部料号
    ///</summary>
    [SugarColumn(ColumnName = "CATALOG_NO")]
    public string? CatalogNo { get; set; }
    /// <summary>
    /// é¢†æ–™å•位
    ///</summary>
    [SugarColumn(ColumnName = "MATERIAL_OUT_UOMID")]
    public string? MaterialOutUomid { get; set; }
    /// <summary>
    /// ç”Ÿäº§éƒ¨é—¨
    ///</summary>
    [SugarColumn(ColumnName = "PUB_DESC_SEG38")]
    public string? PubDescSeg38 { get; set; }
    /// <summary>
    /// é¡¹ç›®ï¼ˆç ”发)
    ///</summary>
    [SugarColumn(ColumnName = "DESCRIPTION")]
    public string? Description { get; set; }
    /// <summary>
    /// é¡¹ç›®ï¼ˆæŠ¥è¡¨ï¼‰
    ///</summary>
    [SugarColumn(ColumnName = "PRIVATE_DESC_SEG4")]
    public string? PrivateDescSeg4 { get; set; }
    /// <summary>
    /// æŠ¥è¡¨é¡¹ç›®ï¼ˆæ±‡æ€»ï¼‰
    ///</summary>
    [SugarColumn(ColumnName = "PRIVATE_DESC_SEG9")]
    public string? PrivateDescSeg9 { get; set; }
    /// <summary>
    /// åŒæ•°é‡
    ///</summary>
    [SugarColumn(ColumnName = "IS_DUAL_QUANTITY")]
    public string? IsDualQuantity { get; set; }
    /// <summary>
    /// åŒå•位
    ///</summary>
    [SugarColumn(ColumnName = "IS_DUAL_UOM")]
    public string? IsDualUom { get; set; }
    /// <summary>
    /// å¤šå•位
    ///</summary>
    [SugarColumn(ColumnName = "IS_MULTY_UOM")]
    public string? IsMultyUom { get; set; }
    /// <summary>
    /// å›ºå®šè½¬æ¢çއ
    ///</summary>
    [SugarColumn(ColumnName = "IS_VAR_RATIO")]
    public string? IsVarRatio { get; set; }
    /// <summary>
    /// è½¬æ¢çŽ‡ç­–ç•¥
    ///</summary>
    [SugarColumn(ColumnName = "CONVER_RATIO_RULE")]
    public string? ConverRatioRule { get; set; }
    /// <summary>
    /// æ ‡å‡†åº“周
    ///</summary>
    [SugarColumn(ColumnName = "PRIVATE_DESC_SEG11")]
    public string? PrivateDescSeg11 { get; set; }
    /// <summary>
    /// å“ç‰Œåˆ†ç±»
    ///</summary>
    [SugarColumn(ColumnName = "PRIVATE_DESC_SEG7")]
    public string? PrivateDescSeg7 { get; set; }
    /// <summary>
    /// BU(业务单元)
    ///</summary>
    [SugarColumn(ColumnName = "PRIVATE_DESC_SEG2")]
    public string? PrivateDescSeg2 { get; set; }
    /// <summary>
    /// BU(业务单元)
    ///</summary>
    [SugarColumn(ColumnName = "DOCUMENT_STATUS")]
    public string? DocumentStatus { get; set; }
    /// <summary>
    /// æ˜¯å¦ç”Ÿæ•ˆ
    ///</summary>
    [SugarColumn(ColumnName = "FORBID_STATUS")]
    public string? ForbidStatus { get; set; }
    /// <summary>
    /// æ—§ç‰©æ–™ç¼–码
    ///</summary>
    [SugarColumn(ColumnName = "Old_ITEM_NO")]
    public string? OldItemNo { get; set; }
}
StandardPda/MES.Service/Modes/SysDepartment.cs
@@ -149,7 +149,7 @@
    ///     ä¸Šçº§éƒ¨é—¨
    /// </summary>
    [SugarColumn(ColumnName = "PARENT_ID")]
    public decimal? ParentId { get; set; }
    public string? ParentId { get; set; }
    /// <summary>
    ///     è‡ªå®šä¹‰å­—段4
StandardPda/MES.Service/service/BasicData/EmployeeInfoManager.cs
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,110 @@
using SqlSugar;
using System;
using System.Collections.Generic;
using MES.Service.DB;
using MES.Service.Dto.webApi;
using MES.Service.Modes;
using MES.Service.util;
namespace MES.Service.service
{
    public class EmployeeInfoManager : Repository<EmployeeInfo>
    {
        public bool Save(ErpEmployeeInfo unit)
        {
            var entity = GetMesItems(unit); // å°† ErpStaff è½¬æ¢ä¸º MesStaff
            return UseTransaction(db =>
            {
                switch (unit.Type)
                {
                    case "2":
                    case "4":
                        if (InsertOrUpdateEmp(db, entity.employeeInfo,
                                entity.employeeItems)) // æ’入或更新员工
                            return 1;
                        break;
                    case "3":
                        if (DeleteEmp(db, entity.employeeInfo,
                                entity.employeeItems)) // åˆ é™¤å‘˜å·¥
                            return 1;
                        break;
                    default:
                        throw new ArgumentNullException(
                            $"type没有{unit.Type}这个类型的参数");
                }
                throw new NotImplementedException("操作失败");
            }) > 0;
        }
        public bool SaveList(List<ErpEmployeeInfo> departments)
        {
            var result = departments.Select(Save).ToList();
            return result.All(b => b);
        }
        private bool InsertOrUpdateEmp(SqlSugarScope db,
            EmployeeInfo entityEmployeeInfo,
            List<EmployeeItem> entityEmployeeItems)
        {
            db.Deleteable<EmployeeInfo>().Where(
                s => s.Id == entityEmployeeInfo.Id).ExecuteCommand();
            db.Deleteable<EmployeeItem>()
                .Where(a => a.Eid == entityEmployeeInfo.Id).ExecuteCommand();
            var executeCommand =
                db.Insertable(entityEmployeeInfo).ExecuteCommand();
            var command = db.Insertable(entityEmployeeItems).ExecuteCommand();
            return executeCommand > 0 && command > 0;
        }
        private bool DeleteEmp(SqlSugarScope db,
            EmployeeInfo entityEmployeeInfo,
            List<EmployeeItem> entityEmployeeItems)
        {
            var command = db.Deleteable<EmployeeInfo>().Where(
                s => s.Id == entityEmployeeInfo.Id).ExecuteCommand();
            var executeCommand = db.Deleteable<EmployeeItem>()
                .Where(a => a.Eid == entityEmployeeInfo.Id).ExecuteCommand();
            return executeCommand > 0 && command > 0;
        }
        private (EmployeeInfo employeeInfo, List<EmployeeItem> employeeItems)
            GetMesItems(
                ErpEmployeeInfo item)
        {
            var items = new EmployeeInfo
            {
                Id = Convert.ToDecimal(item.Id),
                EmployeeNo = item.fNumber,
                EmployeeName = item.fName,
                DepartmentCode = item.fPostDeptid,
                DocumentStatus = item.FDocumentStatus,
                IsDisabled = item.FForbidStatus,
                Organization = item.FUseOrgId
            };
            var employeeItems = new List<EmployeeItem>();
            foreach (var erpEmployeeInfoDto in item.OperatorTypes)
            {
                var employee = new EmployeeItem
                {
                    Eid = items.Id,
                    EType = erpEmployeeInfoDto.OperatorType,
                    CreateDate = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss")
                };
                employeeItems.Add(employee);
            }
            return (items, employeeItems);
        }
    }
}
StandardPda/MES.Service/service/BasicData/MesItemsManager.cs
@@ -8,15 +8,6 @@
public class MesItemsManager : Repository<MesItems>
{
    public MesItems GetItemQcPrint(WarehouseQuery query)
    {
        return Db.Queryable<MesItems>()
            .Where(c => c.Factory == query.Factory
                        && c.Company == query.Company
                        && c.ItemNo == query.ItemNo).First();
    }
    public bool Save(ErpItems item)
    {
        var entity = GetMesItems(item);
@@ -25,20 +16,8 @@
        {
            switch (item.Type)
            {
                case "0":
                    if (UpdateItemStatus(db, entity.Id, "A"))
                        return 1;
                    break;
                case "1":
                    if (UpdateItemStatus(db, entity.Id, "B"))
                        return 1;
                    break;
                //case "2":
                //    if (InsertItem(db, entity))
                //        return 1;
                //    break;
                case "3":
                    if (DeleteItem(db, entity.Id))
                    if (DeleteItem(db, entity))
                        return 1;
                    break;
                case "2":
@@ -58,224 +37,129 @@
    public bool SaveList(List<ErpItems> items)
    {
        var list = items.Select(GetMesItems).ToList();
        var groupBy = list.GroupBy(s => s.Type)
            .ToDictionary(g => g.Key, g => g.ToList());
        return UseTransaction(db =>
        {
            foreach (var itemGroup in groupBy)
                switch (itemGroup.Key)
                {
                    case "0":
                        if (!UpdateItemStatusBatch(db, itemGroup.Value, "A"))
                            throw new NotImplementedException("启用失败");
                        break;
                    case "1":
                        if (!UpdateItemStatusBatch(db, itemGroup.Value, "B"))
                            throw new NotImplementedException("禁用失败");
                        break;
                    //case "2":
                    //    if (!InsertItemBatch(db, itemGroup.Value))
                    //        throw new NotImplementedException("插入失败");
                    //    break;
                    case "3":
                        if (!DeleteItemBatch(db, itemGroup.Value))
                            throw new NotImplementedException("删除失败");
                        break;
                    case "2":
                    case "4":
                    case "5":
                        if (!InsertOrUpdateBatch(db, itemGroup.Value))
                            throw new NotImplementedException("同步失败");
                        break;
                    default:
                        throw new ArgumentNullException(
                            $"type没有{itemGroup.Key}这个类型的参数");
                }
            return 1;
        }) > 0;
        var result = items.Select(Save).ToList();
        return result.All(b => b);
    }
    private bool UpdateItemStatus(SqlSugarScope db, decimal itemId,
        string status)
    private bool DeleteItem(SqlSugarScope db, List<MesItems> listItem)
    {
        var result = db.Updateable<MesItems>()
            .SetColumns(s => s.Fforbidstatus == status)
            .Where(s => s.Id == itemId).ExecuteCommand();
        // æå–所有需要的 MesId ç»„合
        var ids = listItem.Select(customer => customer.Id.ToString())
            .ToList();
        if (result > 0)
            return true;
        // ä½¿ç”¨è¿™äº› MesId åŽ»æŸ¥è¯¢ MesLinkU9 è¡¨ï¼Œæ‰¾åˆ°å¯¹åº”çš„ U9Id
        var u9Ids = Db.Queryable<MesLinkU9>()
            .Where(u =>
                ids.Contains(u.MesId) && u.TableType == "MES_ITEMS")
            .Select(u => u.U9Id)
            .Distinct() // åº”用 Distinct åŽ»é‡
            .ToList();
        throw new NotImplementedException(status == "A" ? "启用失败" : "禁用失败");
    }
        // æ ¹æ® U9Id æ‰¾åˆ°æ‰€æœ‰å¯¹åº”çš„ MesId,进行删除
        // æ³¨æ„ï¼šè¿™é‡Œå‡è®¾æ‚¨ç¡®å®žæƒ³è¦åˆ é™¤è¿™äº›è®°å½•。如果不确定,请先查询以验证结果。
        var idsToDelete = Db.Queryable<MesLinkU9>()
            .Where(u => u9Ids.Contains(u.U9Id) && u.TableType == "MES_ITEMS")
            .Select(u => u.MesId)
            .Distinct() // åº”用 Distinct åŽ»é‡
            .ToList();
    private bool InsertItem(SqlSugarScope db, MesItems entity)
    {
        var insert = db.Insertable(entity).ExecuteCommand();
        if (insert > 0)
            return true;
        throw new NotImplementedException("插入失败");
    }
    private bool DeleteItem(SqlSugarScope db, decimal itemId)
    {
        var deleteById = db.Deleteable<MesItems>().In(itemId).ExecuteCommand();
        if (deleteById > 0)
            return true;
        throw new NotImplementedException("删除失败");
    }
    private MesItems GetMesItems(ErpItems item)
    {
        return new MesItems
        {
            Id = Convert.ToDecimal(item.Id),
            ItemId = Convert.ToDecimal(item.Id),
            ItemNo = item.FNumber,
            ItemName = item.FName,
            ItemModel = item.FSpecification,
            ItemUnit = item.FBaseUnitId,
            Lowlimit = item.FSafeStock,
            Highlimit = item.FMaxStock,
            PrdPack = item.FMinPackCount,
            DepotCode = item.FStockId,
            /// <summary>
            /// æŽ¥å£å­—段调整:已删除或不再使用PPBOM00019124字段。
            /// </summary>
            /// <remarks>
            /// ä¿®æ”¹äººï¼šæ± å—骏
            /// ä¿®æ”¹æ—¥æœŸï¼š2024-12-25
            /// è¯´æ˜Žï¼šæ­¤å­—段已被删除或不再使用于当前接口中。
            /// ä¿ç•™è¢«æ³¨é‡Šçš„代码以记录修改历史。
            /// </remarks>
            //Ppbom00019124 = item.PPBOM00019124,
            Fmaterialgroup = item.FMaterialGroup,
            Remarks = item.FDescription,
            Ffinishreceiptoverrate = item.FFinishReceiptOverRate,
            Fissuetype = item.FIssueType,
            Fisbatchmanage = item.FIsBatchManage,
            Fpurchaserid = item.FPurchaserId,
            Fpurchaseunitid = item.FPurchaseUnitId,
            Storeunit = item.FStoreUnitID,
            Saleunit = item.FSaleUnitId,
            Fforbidstatus = item.FForbidStatus,
            MaterialProperti = item.FErpClsID,
            ProductionWorkshop = item.FWorkShopId,
            ProduceUnit = item.FPRODUCEUNITID,
            SubconUnit = item.FSUBCONUNITID,
            CreateOrg = Convert.ToDecimal(item.FCreateOrgId),
            UseOrg = Convert.ToDecimal(item.FUseOrgId),
            LossPercent = item.FLOSSPERCENT,
            MnemonicCode = item.FMnemonicCode,
            ExpPeriod = item.FExpPeriod,
            //ColorName = item.FColor,
            CreateDate = DateTime.Now,
            Company = "1000",
            Factory = "1000",
            /// <summary>
            /// æŽ¥å£å­—段调整:标准版接口新增字段。
            /// </summary>
            /// <remarks>
            /// ä¿®æ”¹äººï¼š<池南骏>
            /// ä¿®æ”¹æ—¥æœŸï¼š<2024-12-31>
            /// ä¿®æ”¹è¯´æ˜Žï¼š
            /// - åŽŸä»£ç ï¼šç©º
            /// - ä¿®æ”¹åŽï¼š
            /// </remarks>
            FOLDNUMBER = item.FOldNumber,
            FMINSTOCK = item.FMinStock,
            FFINISHRECEIPTSHORTRATE = item.FFinishReceiptShortRate,
            FDEFAULTVENDOR = item.FDefaultVendor,
            FDOCUMENTSTATUS = item.FDocumentStatus,
            FMFGPOLICYID = item.FMfgPolicyId,
            FBOMUNITID = item.FBOMUnitId,
            FISKITTING = item.FIsKitting,
            FISCOBY = item.FIsCoby,
            FOVERCONTROLMODE = item.FOverControlMode,
            F_MJBH = item.F_MJBH
        };
    }
    private bool UpdateItemStatusBatch(SqlSugarScope db,
        List<MesItems> itemList, string status)
    {
        var ids = itemList.Select(it => it.Id).ToArray();
        var result = db.Updateable<MesItems>()
            .SetColumns(s => s.Fforbidstatus == status)
            .Where(s => ids.Contains(s.Id)).ExecuteCommand();
        if (result > 0)
            return true;
        throw new NotImplementedException(status == "A" ? "启用失败" : "禁用失败");
    }
    private bool InsertItemBatch(SqlSugarScope db, List<MesItems> itemList)
    {
        var insertRange = db.Insertable(itemList).ExecuteCommand();
        if (insertRange > 0)
            return true;
        throw new NotImplementedException("插入失败");
    }
    private bool DeleteItemBatch(SqlSugarScope db, List<MesItems> itemList)
    {
        var ids = itemList.Select(it => it.Id).ToArray();
        var deleteByIds = db.Deleteable<MesItems>().In(ids).ExecuteCommand();
        if (deleteByIds > 0)
            return true;
        throw new NotImplementedException("删除失败");
    }
    /// <summary>
    ///     "插入或更新的方法"调整:修改为先删除再插入。
    /// </summary>
    /// <remarks>
    ///     ä¿®æ”¹äººï¼šæ± å—骏
    ///     ä¿®æ”¹æ—¥æœŸï¼š2024-12-31
    ///     ä¿®æ”¹è¯´æ˜Žï¼š`
    /// </remarks>
    /// åŽŸä»£ç ï¼š
    //private bool InsertOrUpdate(SqlSugarScope db, MesItems entity)
    //{
    //    var exists = db.Queryable<MesItems>().Any(e => e.Id == entity.Id);
    //    if (exists)
    //    {
    //        var update = db.Updateable(entity).ExecuteCommand();
    //        if (update > 0)
    //            return true;
    //    }
    //    else
    //    {
    //        var insert = db.Insertable(entity).ExecuteCommand();
    //        if (insert > 0)
    //            return true;
    //    }
    //    return false;
    //}
    private bool InsertOrUpdate(SqlSugarScope db, MesItems entity)
    {
        db.Deleteable<MesItems>()
            .Where(s => s.Id == entity.Id)
        var deleteByIds = Db.Deleteable<MesProject>().In(idsToDelete)
            .ExecuteCommand();
        var insert = db.Insertable(entity).ExecuteCommand();
        return insert > 0;
        // if (deleteByIds > 0)
        //     return true;
        return true;
        //throw new NotImplementedException("删除失败");
    }
    private bool InsertOrUpdateBatch(SqlSugarScope db, List<MesItems> itemList)
    private List<MesItems> GetMesItems(ErpItems item)
    {
        foreach (var entity in itemList)
            if (!InsertOrUpdate(db, entity))
                return false;
        List<MesItems> list = new();
        return true;
        foreach (var erpDetail in item.FUseOrgId)
        {
            var exists = Db.Queryable<MesLinkU9>().Any(u =>
                u.U9Id == item.Id && u.OrgId == erpDetail.FUseOrgId &&
                u.TableType == "MES_ITEMS");
            decimal mesId = 0;
            if (exists)
            {
                //获取mesid
                mesId = Convert.ToDecimal(Db.Queryable<MesLinkU9>()
                    .Where(u =>
                        u.U9Id == item.Id && u.OrgId == erpDetail.FUseOrgId &&
                        u.TableType == "MES_ITEMS")
                    .Select(u => u.MesId) // é€‰æ‹© MesId å­—段
                    .First());
            }
            else
            {
                var entity = new MesLinkU9
                {
                    CreateDate = DateTime.Now,
                    MesId = mesId.ToString(),
                    U9Id = item.Id,
                    OrgId = erpDetail.FUseOrgId,
                    TableType = "MES_ITEMS"
                };
                mesId = Db.Insertable(entity).ExecuteReturnIdentity();
            }
            var items = new MesItems
            {
                Id = mesId,
                ItemId = mesId,
                Fmaterialgroup = item.FMaterialGroup,
                ItemNo = item.FNumber,
                OldItemNo = item.FOldNumber,
                ItemName = item.FName,
                CatalogNo = item.CatalogNo,
                ItemModel = item.FSpecification,
                SafeStock = item.FSafeStock,
                Lowlimit = item.FMinStock,
                Highlimit = item.FMaxStock,
                DepotCode = item.FStockId,
                Fisbatchmanage = item.FIsBatchManage,
                MaterialProperti = item.FErpClsID,
                Storeunit = item.FStoreUnitID,
                ItemUnit = item.FBaseUnitId,
                Fpurchaseunitid = item.FPurchaseUnitId,
                Saleunit = item.FSaleUnitId,
                ProduceUnit = item.FPRODUCEUNITID,
                MaterialOutUomid = item.MaterialOutUomid,
                CreateBy = item.CreateBy,
                PubDescSeg38 = item.PubDescSeg38,
                Description = item.Description,
                PrivateDescSeg4 = item.PrivateDescSeg4,
                PrivateDescSeg9 = item.PrivateDescSeg9,
                IsDualQuantity = item.IsDualQuantity,
                IsDualUom = item.IsDualUom,
                IsMultyUom = item.IsMultyUom,
                IsVarRatio = item.IsVarRatio,
                ConverRatioRule = item.ConverRatioRule,
                PrivateDescSeg11 = item.PrivateDescSeg11,
                PrivateDescSeg7 = item.PrivateDescSeg7,
                PrivateDescSeg2 = item.PrivateDescSeg2,
                DocumentStatus = item.FDocumentStatus,
                ForbidStatus = item.FForbidStatus,
                UseOrg = erpDetail.FUseOrgId,
                CreateDate = DateTime.Now,
                Company = "1000",
                Factory = "1000",
            };
            list.Add(items);
        }
        return list;
    }
    private bool InsertOrUpdate(SqlSugarScope db, List<MesItems> listItem)
    {
        DeleteItem(db, listItem);
        var insert = db.Insertable(listItem).IgnoreColumns(true)
            .ExecuteCommand();
        return insert > 0;
    }
}
StandardPda/MES.Service/service/BasicData/SysDepartmentManager.cs
@@ -83,40 +83,7 @@
        throw new NotImplementedException("删除失败");
    }
    /// <summary>
    /// "插入或更新部门的方法"调整:修改为先删除再插入
    /// </summary>
    /// <remarks>
    /// ä¿®æ”¹äººï¼šæ± å—骏
    /// ä¿®æ”¹æ—¥æœŸï¼š2024-12-31
    /// ä¿®æ”¹è¯´æ˜Žï¼š`
    /// </remarks>
    ///原代码
    // æ’入或更新部门的方法
    //private bool InsertOrUpdateDepartment(SqlSugarScope db,
    //    SysDepartment entity)
    //{
    //    var exists = db.Queryable<SysDepartment>().Any(e => e.Id == entity.Id);
    //    if (exists)
    //    {
    //        var update = db.Updateable(entity).ExecuteCommand();
    //        if (update > 0)
    //            return true;
    //    }
    //    else
    //    {
    //        var insert = db.Insertable(entity).ExecuteCommand();
    //        if (insert > 0)
    //            return true;
    //    }
    //    return false;
    //}
    // å°† ErpDepartment å¯¹è±¡è½¬æ¢ä¸º SysDepartment å¯¹è±¡çš„æ–¹æ³•
    ///新代码
    // æ’入或更新部门的方法
    private bool InsertOrUpdateDepartment(SqlSugarScope db,
@@ -145,7 +112,7 @@
            CreateDate = DateTime.Now,
            CreateOrg = Convert.ToDecimal(department.FCreateOrgId),
            UseOrg = Convert.ToDecimal(department.FUseOrgId),
            ParentId = Convert.ToDecimal(department.FParentID),
            ParentId = department.FParentID,
            FDOCUMENTSTATUS = department.FDocumentStatus,
            Company = "1000",
            Factory = "1000"
@@ -155,104 +122,7 @@
    // SaveList æ–¹æ³•用于保存多个部门记录,根据类型批量执行不同的操作
    public bool SaveList(List<ErpDepartment> departments)
    {
        var list = new List<SysDepartment>();
        departments.ForEach(s =>
        {
            var entity =
                GetSysDepartment(s); // å°† ErpDepartment è½¬æ¢ä¸º SysDepartment
            entity.Type = s.Type;
            list.Add(entity);
        });
        var groupBy = list.GroupBy(s => s.Type)
            .ToDictionary(g => g.Key, g => g.ToList());
        return UseTransaction(db =>
        {
            foreach (var departmentGroup in groupBy)
                switch (departmentGroup.Key)
                {
                    case "0":
                        if (!UpdateDepartmentStatusBatch(db,
                                departmentGroup.Value, "A")) // æ‰¹é‡å¯ç”¨éƒ¨é—¨
                            throw new NotImplementedException("启用失败");
                        break;
                    case "1":
                        if (!UpdateDepartmentStatusBatch(db,
                                departmentGroup.Value, "B")) // æ‰¹é‡ç¦ç”¨éƒ¨é—¨
                            throw new NotImplementedException("禁用失败");
                        break;
                    //case "2":
                    //    if (!InsertDepartmentBatch(db,
                    //            departmentGroup.Value)) // æ‰¹é‡æ’入部门
                    //        throw new NotImplementedException("插入失败");
                    //    break;
                    case "3":
                        if (!DeleteDepartmentBatch(db,
                                departmentGroup.Value)) // æ‰¹é‡åˆ é™¤éƒ¨é—¨
                            throw new NotImplementedException("删除失败");
                        break;
                    case "2":
                    case "4":
                        if (!InsertOrUpdateDepartmentBatch(db,
                                departmentGroup.Value)) // æ‰¹é‡æ’入或更新部门
                            throw new NotImplementedException("同步失败");
                        break;
                    default:
                        throw new ArgumentNullException(
                            $"type没有{departmentGroup.Key}这个类型的参数");
                }
            return 1;
        }) > 0;
    }
    // æ‰¹é‡æ›´æ–°éƒ¨é—¨çŠ¶æ€çš„æ–¹æ³•
    private bool UpdateDepartmentStatusBatch(SqlSugarScope db,
        List<SysDepartment> departmentList, string status)
    {
        var ids = departmentList.Select(it => it.Id).ToArray();
        var result = db.Updateable<SysDepartment>()
            .SetColumns(s => s.Depextr4 == status)
            .Where(s => ids.Contains(s.Id)).ExecuteCommand();
        if (result > 0)
            return true;
        throw new NotImplementedException(status == "A" ? "启用失败" : "禁用失败");
    }
    // æ‰¹é‡æ’入部门的方法
    private bool InsertDepartmentBatch(SqlSugarScope db,
        List<SysDepartment> departmentList)
    {
        var insertRange = db.Insertable(departmentList).ExecuteCommand();
        if (insertRange > 0)
            return true;
        throw new NotImplementedException("插入失败");
    }
    // æ‰¹é‡åˆ é™¤éƒ¨é—¨çš„æ–¹æ³•
    private bool DeleteDepartmentBatch(SqlSugarScope db,
        List<SysDepartment> departmentList)
    {
        var ids = departmentList.Select(it => it.Id).ToArray();
        var deleteByIds =
            db.Deleteable<SysDepartment>().In(ids).ExecuteCommand();
        if (deleteByIds > 0)
            return true;
        throw new NotImplementedException("删除失败");
    }
    // æ‰¹é‡æ’入或更新部门的方法
    private bool InsertOrUpdateDepartmentBatch(SqlSugarScope db,
        List<SysDepartment> departmentList)
    {
        foreach (var entity in departmentList)
            if (!InsertOrUpdateDepartment(db, entity))
                return false;
        return true;
        var result = departments.Select(Save).ToList();
        return result.All(b => b);
    }
}
StandardPda/MESApplication/Controllers/BasicData/EmployeeInfoController.cs
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,269 @@
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 Masuit.Tools;
using MES.Service.Dto.webApi;
using MES.Service.Modes;
using MES.Service.service;
using MES.Service.util;
using Newtonsoft.Json;
namespace MESApplication.Controllers
{
    [ApiController]
    [Route("api/[controller]")]
    public class EmployeeInfoController : ControllerBase
    {
        private EmployeeInfoManager m = new EmployeeInfoManager();
        private readonly MessageCenterManager _manager = new();
        private readonly string METHOD = "POST";
        private readonly string TableName = "MES_ITEMS";
        private readonly string
            URL = "http://localhost:10054/api/EmployeeInfo/";
        [HttpPost("Save")]
        public ResponseResult Save(ErpEmployeeInfo unit)
        {
            var entity = new MessageCenter();
            entity.TableName = TableName;
            entity.Url = URL + "Save";
            entity.Method = METHOD;
            entity.Data = JsonConvert.SerializeObject(unit);
            entity.Status = 1;
            entity.CreateBy = "PL017";
            entity.Route = unit.fNumber;
            try
            {
                dynamic resultInfos = new ExpandoObject();
                var save = m.Save(unit);
                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<ErpEmployeeInfo> 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";
            entity.Route = units.Select(it => it.fNumber).Join(",");
            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] EmployeeInfo 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] EmployeeInfo 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] EmployeeInfo 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/MesDeliveryNoteDetails.cs
ÎļþÒÑɾ³ý
StandardPda/MESApplication/Controllers/BasicData/MesItemTypeController.cs
@@ -1,4 +1,5 @@
using System.Dynamic;
using Masuit.Tools;
using MES.Service.Dto.webApi;
using MES.Service.Modes;
using MES.Service.service;
@@ -33,6 +34,7 @@
        entity.Data = JsonConvert.SerializeObject(unit);
        entity.Status = 1;
        entity.CreateBy = "PL017";
        entity.Route = unit.FNumber;
        try
        {
            dynamic resultInfos = new ExpandoObject();
@@ -76,6 +78,7 @@
        entity.Data = JsonConvert.SerializeObject(units);
        entity.Status = 1;
        entity.CreateBy = "PL017";
        entity.Route = units.Select(it => it.FNumber).Join(",");
        try
        {
            dynamic resultInfos = new ExpandoObject();
StandardPda/MESApplication/Controllers/BasicData/MesItemsController.cs
@@ -1,4 +1,5 @@
using System.Dynamic;
using Masuit.Tools;
using MES.Service.Dto.service;
using MES.Service.Dto.webApi;
using MES.Service.Modes;
@@ -22,30 +23,7 @@
    private readonly string TableName = "MES_ITEMS";
    private readonly string URL = "http://localhost:10054/api/MesItems/";
    //GetItemQcPrint
    [HttpPost("GetItemQcPrint")]
    public ResponseResult GetItemQcPrint(WarehouseQuery query)
    {
        try
        {
            dynamic resultInfos = new ExpandoObject();
            var save = m.GetItemQcPrint(query);
            resultInfos.tbBillList = save;
            return new ResponseResult
            {
                status = 0,
                message = "OK",
                data = resultInfos
            };
        }
        catch (Exception ex)
        {
            return ResponseResult.ResponseError(ex);
        }
    }
    [HttpPost("Save")]
    public ResponseResult Save(ErpItems unit)
    {
@@ -56,6 +34,7 @@
        entity.Data = JsonConvert.SerializeObject(unit);
        entity.Status = 1;
        entity.CreateBy = "PL017";
        entity.Route = unit.FNumber;
        try
        {
@@ -100,6 +79,7 @@
        entity.Data = JsonConvert.SerializeObject(units);
        entity.Status = 1;
        entity.CreateBy = "PL017";
        entity.Route = units.Select(it => it.FNumber).Join(",");
        try
        {
            dynamic resultInfos = new ExpandoObject();
StandardPda/MESApplication/Controllers/BasicData/MesPositionController.cs
@@ -1,4 +1,5 @@
using System.Dynamic;
using Masuit.Tools;
using MES.Service.Dto.webApi;
using MES.Service.Modes;
using MES.Service.service;
@@ -33,6 +34,7 @@
        entity.Data = JsonConvert.SerializeObject(unit);
        entity.Status = 1;
        entity.CreateBy = "PL017";
        entity.Route = unit.FNumber;
        try
        {
            dynamic resultInfos = new ExpandoObject();
@@ -76,6 +78,7 @@
        entity.Data = JsonConvert.SerializeObject(units);
        entity.Status = 1;
        entity.CreateBy = "PL017";
        entity.Route = units.Select(it => it.FNumber).Join(",");
        try
        {
            dynamic resultInfos = new ExpandoObject();
StandardPda/MESApplication/Controllers/BasicData/MesStaffController.cs
@@ -32,6 +32,7 @@
        entity.Data = JsonConvert.SerializeObject(staff);
        entity.Status = 1;
        entity.CreateBy = "PL017";
        entity.Route = staff.FName;
        try
        {
            dynamic resultInfos = new ExpandoObject();
StandardPda/MESApplication/Controllers/BasicData/MesUnitController.cs
@@ -1,4 +1,5 @@
using System.Dynamic;
using Masuit.Tools;
using MES.Service.Dto.webApi;
using MES.Service.Modes;
using MES.Service.service;
@@ -32,6 +33,7 @@
        entity.Data = JsonConvert.SerializeObject(unit);
        entity.Status = 1;
        entity.CreateBy = "PL017";
        entity.Route = unit.FNumber;
        try
        {
            dynamic resultInfos = new ExpandoObject();
@@ -75,6 +77,7 @@
        entity.Data = JsonConvert.SerializeObject(units);
        entity.Status = 1;
        entity.CreateBy = "PL017";
        entity.Route = units.Select(it => it.FNumber).Join(",");
        try
        {
            dynamic resultInfos = new ExpandoObject();
StandardPda/MESApplication/Controllers/BasicData/OrganizeController.cs
@@ -1,4 +1,5 @@
using System.Dynamic;
using Masuit.Tools;
using MES.Service.Dto.webApi;
using MES.Service.Modes;
using MES.Service.service;
@@ -33,6 +34,7 @@
        entity.Data = JsonConvert.SerializeObject(unit);
        entity.Status = 1;
        entity.CreateBy = "PL017";
        entity.Route = unit.FNumber;
        try
        {
            dynamic resultInfos = new ExpandoObject();
@@ -76,6 +78,7 @@
        entity.Data = JsonConvert.SerializeObject(units);
        entity.Status = 1;
        entity.CreateBy = "PL017";
        entity.Route = units.Select(it => it.FNumber).Join(",");
        try
        {
            dynamic resultInfos = new ExpandoObject();
StandardPda/MESApplication/Controllers/BasicData/SalesOrderController.cs
ÎļþÒÑɾ³ý
StandardPda/MESApplication/Controllers/BasicData/SalesOrderDetailController.cs
ÎļþÒÑɾ³ý
StandardPda/MESApplication/Controllers/BasicData/SalesReturnNoticeController.cs
ÎļþÒÑɾ³ý
StandardPda/MESApplication/Controllers/BasicData/SalesReturnNoticeDetailController.cs
ÎļþÒÑɾ³ý
StandardPda/MESApplication/Controllers/BasicData/ShipmentDetailController.cs
ÎļþÒÑɾ³ý
StandardPda/MESApplication/Controllers/BasicData/ShipmentNoticeController.cs
ÎļþÒÑɾ³ý
StandardPda/MESApplication/Controllers/BasicData/SysDepartmentController.cs
@@ -1,4 +1,5 @@
using System.Dynamic;
using Masuit.Tools;
using MES.Service.Dto.webApi;
using MES.Service.Modes;
using MES.Service.service;
@@ -32,6 +33,7 @@
        entity.Data = JsonConvert.SerializeObject(unit);
        entity.Status = 1;
        entity.CreateBy = "PL017";
        entity.Route = unit.FNumber;
        try
        {
            dynamic resultInfos = new ExpandoObject();
@@ -75,6 +77,7 @@
        entity.Data = JsonConvert.SerializeObject(units);
        entity.Status = 1;
        entity.CreateBy = "PL017";
        entity.Route = units.Select(it => it.FNumber).Join(",");
        try
        {
            dynamic resultInfos = new ExpandoObject();