MES.Service/Dto/webApi/ErpCgth.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
MES.Service/Dto/webApi/ErpCgthB.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
MES.Service/Dto/webApi/ErpCgtha.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
MES.Service/Modes/MesCgthSq.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
MES.Service/Modes/MesCgthSqDetail.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
MES.Service/service/BasicData/MesCgthSqManager.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
MESApplication/Controllers/BasicData/MesCgthSqController.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
MES.Service/Dto/webApi/ErpCgth.cs
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,7 @@ namespace MES.Service.Dto.webApi; public class ErpCgth { public ErpCgtha ErpCgtha { get; set; } public List<ErpCgthB> ErpCgthB { get; set; } } MES.Service/Dto/webApi/ErpCgthB.cs
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,64 @@ namespace MES.Service.Dto.webApi; public class ErpCgthB { /// <summary> /// ERP ç³»ç»æç»è®°å½ ID /// </summary> public string? ERPID { get; set; } /// <summary> /// å¤é¨ç³»ç»å ³è ID /// </summary> public string? EID { get; set; } /// <summary> /// æºååå·ï¼å ³èåå§ä¸å¡åæ®ï¼ /// </summary> public string? FSRCBillNo { get; set; } /// <summary> /// æºåç±»åï¼æ è¯åå§åæ®ç±»åï¼ /// </summary> public string? FSRCBillTypeId { get; set; } /// <summary> /// ç©æ IDï¼å¯¹åºç©æä¸»æ°æ®ï¼ /// </summary> public string? FMATERIALID { get; set; } /// <summary> /// åºååä½ï¼ç©æç计éåä½ï¼ /// </summary> public string? FUnitID { get; set; } /// <summary> /// ä»åº IDï¼å ³èä»åºä¿¡æ¯ï¼ /// </summary> public string? FSTOCKID { get; set; } /// <summary> /// ä»ä½ï¼ç©æå¨ä»åºä¸çå ·ä½åå¨ä½ç½®ï¼ /// </summary> public string? FSTOCKLOCID { get; set; } /// <summary> /// æ¹å·ï¼ç©æçäº§æ¹æ¬¡ç¼å·ï¼ /// </summary> public string? FLot { get; set; } /// <summary> /// å®éæ°éï¼å®é éè¿çç©ææ°éï¼ /// </summary> public decimal? FRMREALQTY { get; set; } /// <summary> /// 夿³¨ä¿¡æ¯ï¼æç»ç¸å ³è¯´æï¼ /// </summary> public string? FNOTE { get; set; } /// <summary> /// 计åè·è¸ªå·ï¼ç¨äºè·è¸ªç©æè®¡åæ§è¡ï¼ /// </summary> public string? FMtoNo { get; set; } } MES.Service/Dto/webApi/ErpCgtha.cs
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,119 @@ namespace MES.Service.Dto.webApi; public class ErpCgtha { /// <summary> /// æä½ç±»å /// </summary> public string? TYPE { get; set; } /// <summary> /// ERP 主表 id /// </summary> public string? ERPID { get; set; } /// <summary> /// åæ®ç¼å· /// </summary> public string? billNo { get; set; } /// <summary> /// éææ¥æ /// </summary> public string? FDate { get; set; } /// <summary> /// åæ®ç¶æ /// </summary> public string? FDocumentStatus { get; set; } /// <summary> /// ä¾åºå ID /// </summary> public string? FSupplierID { get; set; } /// <summary> /// åæ®ç±»å /// </summary> public string? FBillTypeID { get; set; } /// <summary> /// ä¸å¡ç±»å /// </summary> public string? FBusinessType { get; set; } /// <summary> /// éæç±»å /// </summary> public string? FMRTYPE { get; set; } /// <summary> /// éææ¹å¼ /// </summary> public string? FMRMODE { get; set; } /// <summary> /// å建人 /// </summary> public string? FCreatorId { get; set; } /// <summary> /// éè´ç»ç» /// </summary> public string? FPurchaseOrgId { get; set; } /// <summary> /// éæç»ç» /// </summary> public string? FStockOrgId { get; set; } /// <summary> /// éæ±ç»ç» /// </summary> public string? FRequireOrgId { get; set; } /// <summary> /// éæé¨é¨ /// </summary> public string? FMRDeptId { get; set; } /// <summary> /// ä»ç®¡å /// </summary> public string? FSTOCKERID { get; set; } /// <summary> /// éè´å /// </summary> public string? FPURCHASERID { get; set; } /// <summary> /// éæåå /// </summary> public string? FMRREASON { get; set; } /// <summary> /// éè´é¨é¨ /// </summary> public string? FPURCHASEDEPTID { get; set; } /// <summary> /// éè´ç» /// </summary> public string? FPURCHASERGROUPID { get; set; } /// <summary> /// éªæ¶æ¹å¼ /// </summary> public string? FACCTYPE { get; set; } /// <summary> /// åå»ºæ¥æ /// </summary> public string? FCreateDate { get; set; } /// <summary> /// æ«ç æ è¯ /// </summary> public int? F_WPVT_INTEGER_L6W { get; set; } } MES.Service/Modes/MesCgthSq.cs
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,222 @@ using SqlSugar; namespace MES.Service.Modes; /// <summary> /// éè´éè´§ç³è¯·è¡¨ /// </summary> [SugarTable("MES_CGTH_SQ")] public class MesCgthSq { /// <summary> /// è®°å½å¯ä¸æ è¯ï¼ä¸»é®ï¼ /// </summary> [SugarColumn(ColumnName = "ID", IsPrimaryKey = true)] public Guid Id { get; set; } /// <summary> /// åæ®ç¼å· /// </summary> [SugarColumn(ColumnName = "BILL_NO")] public string BillNo { get; set; } /// <summary> /// å建人 /// </summary> [SugarColumn(ColumnName = "CREATE_BY")] public string? CreateBy { get; set; } /// <summary> /// å建æ¶é´ /// </summary> [SugarColumn(ColumnName = "CREATE_DATE")] public DateTime? CreateDate { get; set; } /// <summary> /// æåæ´æ°äºº /// </summary> [SugarColumn(ColumnName = "LAST_UPDATE_USER")] public string? LastUpdateUser { get; set; } /// <summary> /// æåæ´æ°æ¶é´ /// </summary> [SugarColumn(ColumnName = "LAST_UPDATE_TIME")] public DateTime? LastUpdateTime { get; set; } /// <summary> /// å®¡æ ¸äºº /// </summary> [SugarColumn(ColumnName = "CHECK_USER")] public string? CheckUser { get; set; } /// <summary> /// å®¡æ ¸æ¶é´ /// </summary> [SugarColumn(ColumnName = "CHECK_DATE")] public DateTime? CheckDate { get; set; } /// <summary> /// ç¶ææ è¯ï¼0/1ï¼ /// é»è®¤å¼: 0 /// </summary> [SugarColumn(ColumnName = "STATUS")] public bool? Status { get; set; } /// <summary> /// æ¯å¦å®ææ è¯ï¼0/1ï¼ /// é»è®¤å¼: 0 /// </summary> [SugarColumn(ColumnName = "IS_FINISH")] public bool? IsFinish { get; set; } /// <summary> /// éè´§æ¹å¼ /// </summary> [SugarColumn(ColumnName = "RETURN_METHOD")] public string? ReturnMethod { get; set; } /// <summary> /// éè´§ç±»å /// </summary> [SugarColumn(ColumnName = "RETURN_TYPE")] public string? ReturnType { get; set; } /// <summary> /// ä»åº ID /// </summary> [SugarColumn(ColumnName = "DEPOT_ID")] public int? DepotId { get; set; } /// <summary> /// ä¾åºå ID /// </summary> [SugarColumn(ColumnName = "SUPP_ID")] public int? SuppId { get; set; } /// <summary> /// 夿³¨ä¿¡æ¯ /// </summary> [SugarColumn(ColumnName = "REMARK")] public string? Remark { get; set; } /// <summary> /// æ¯å¦åºåºæ è¯ï¼0/1ï¼ /// </summary> [SugarColumn(ColumnName = "IS_OUT")] public bool? IsOut { get; set; } /// <summary> /// éè´§ç»ç» ID /// </summary> [SugarColumn(ColumnName = "TH_ORG_ID")] public string? ThOrgId { get; set; } /// <summary> /// æä½ç±»å /// </summary> [SugarColumn(ColumnName = "TYPE")] public string? Type { get; set; } /// <summary> /// ERP 主表 id /// </summary> [SugarColumn(ColumnName = "ERPID")] public string? ErpId { get; set; } /// <summary> /// éææ¥æ /// </summary> [SugarColumn(ColumnName = "FDate")] public string? FDate { get; set; } /// <summary> /// åæ®ç¶æ /// </summary> [SugarColumn(ColumnName = "FDocumentStatus")] public string? FDocumentStatus { get; set; } /// <summary> /// ä¾åºå IDï¼å¤é¨ç³»ç»ï¼ /// </summary> [SugarColumn(ColumnName = "FSupplierID")] public string? FSupplierId { get; set; } /// <summary> /// åæ®ç±»å /// </summary> [SugarColumn(ColumnName = "FBillTypeID")] public string? FBillTypeId { get; set; } /// <summary> /// ä¸å¡ç±»å /// </summary> [SugarColumn(ColumnName = "FBusinessType")] public string? FBusinessType { get; set; } /// <summary> /// éè´ç»ç» /// </summary> [SugarColumn(ColumnName = "FPurchaseOrgId")] public string? FPurchaseOrgId { get; set; } /// <summary> /// éæ±ç»ç» /// </summary> [SugarColumn(ColumnName = "FRequireOrgId")] public string? FRequireOrgId { get; set; } /// <summary> /// éæé¨é¨ /// </summary> [SugarColumn(ColumnName = "FMRDeptId")] public string? FMRDeptId { get; set; } /// <summary> /// ä»ç®¡å /// </summary> [SugarColumn(ColumnName = "FSTOCKERID")] public string? FStockerId { get; set; } /// <summary> /// éè´å /// </summary> [SugarColumn(ColumnName = "FPURCHASERID")] public string? FPurchaserId { get; set; } /// <summary> /// éæåå /// </summary> [SugarColumn(ColumnName = "FMRREASON")] public string? FMRReason { get; set; } /// <summary> /// éè´é¨é¨ /// </summary> [SugarColumn(ColumnName = "FPURCHASEDEPTID")] public string? FPurchaseDeptId { get; set; } /// <summary> /// éè´ç» /// </summary> [SugarColumn(ColumnName = "FPURCHASERGROUPID")] public string? FPurchaserGroupId { get; set; } /// <summary> /// éªæ¶æ¹å¼ /// </summary> [SugarColumn(ColumnName = "FACCTYPE")] public string? FACCTYPE { get; set; } /// <summary> /// åå»ºæ¥æï¼å¤é¨ç³»ç»ï¼ /// </summary> [SugarColumn(ColumnName = "FCreateDate")] public string? FCreateDate { get; set; } /// <summary> /// æ«ç æ è¯ /// </summary> [SugarColumn(ColumnName = "F_WPVT_INTEGER_L6W")] public int? FWPVTINTEGERL6W { get; set; } } MES.Service/Modes/MesCgthSqDetail.cs
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,136 @@ using SqlSugar; namespace MES.Service.Modes; /// <summary> /// éè´éè´§ç³è¯·æç»è¡¨ï¼MES_CGTH_SQ_DETAILï¼ /// </summary> [SugarTable("MES_CGTH_SQ_DETAIL")] public class MesCgthSqDetail { /// <summary> /// æç»è¡¨è®°å½å¯ä¸æ è¯ï¼ä¸»é®ï¼ /// </summary> [SugarColumn(ColumnName = "ID", IsPrimaryKey = true)] public Guid Id { get; set; } /// <summary> /// å ³è主表ï¼MES_CGTH_SQï¼ç ID /// </summary> [SugarColumn(ColumnName = "MID")] public Guid? Mid { get; set; } /// <summary> /// åºååæ®ç¼å· /// </summary> [SugarColumn(ColumnName = "INV_BILL_NO")] public string? InvBillNo { get; set; } /// <summary> /// åºåä½ä¸è¡å· /// </summary> [SugarColumn(ColumnName = "INV_WORK_LINE")] public int? InvWorkLine { get; set; } /// <summary> /// éè´è®¢åå·ï¼é常æ¥èª ERP ç³»ç»ï¼ /// </summary> [SugarColumn(ColumnName = "EBELN")] public string? Ebeln { get; set; } /// <summary> /// å¤é¨ç³»ç» IDï¼å ³èå ¶ä»ç³»ç»è®°å½ï¼ /// </summary> [SugarColumn(ColumnName = "EID")] public int? Eid { get; set; } /// <summary> /// ERP ç³»ç»ä¸çæç»è®°å½ ID /// </summary> [SugarColumn(ColumnName = "ERPID")] public int? ErpId { get; set; } /// <summary> /// ç©æ IDï¼å ³èç©æä¸»è¡¨ï¼ /// </summary> [SugarColumn(ColumnName = "ITEM_ID")] public int? ItemId { get; set; } /// <summary> /// ç³è¯·éè´§æ°é /// </summary> [SugarColumn(ColumnName = "SQ_NUM")] public decimal? SqNum { get; set; } /// <summary> /// å·²æ¶éè´§æ°é /// </summary> [SugarColumn(ColumnName = "YS_NUM")] public decimal? YsNum { get; set; } /// <summary> /// æç»å¤æ³¨ä¿¡æ¯ /// </summary> [SugarColumn(ColumnName = "REMARK")] public string? Remark { get; set; } /// <summary> /// æç»å®ææ è¯ï¼0/1ï¼ /// </summary> [SugarColumn(ColumnName = "IS_FINISH")] public bool? IsFinish { get; set; } /// <summary> /// æç»æåºå· /// </summary> [SugarColumn(ColumnName = "ORDER_NO")] public int? OrderNo { get; set; } /// <summary> /// å ¥åºæç» GUIDï¼å ³èå ¥åºåæç»ï¼ /// </summary> [SugarColumn(ColumnName = "RKMX_GUID")] public Guid? RkmxGuid { get; set; } /// <summary> /// ä»åº IDï¼å ³èä»åºè¡¨ï¼ /// </summary> [SugarColumn(ColumnName = "depot_id")] public long? DepotId { get; set; } /// <summary> /// æºååå·ï¼å ³èåå§ä¸å¡åæ®ï¼ /// </summary> [SugarColumn(ColumnName = "FSRCBillNo")] public string? FsrcBillNo { get; set; } /// <summary> /// æºåç±»åï¼æ è¯åå§åæ®ç±»åï¼ /// </summary> [SugarColumn(ColumnName = "FSRCBillTypeId")] public string? FsrcBillTypeId { get; set; } /// <summary> /// åºååä½ï¼ç©æçåºå计éåä½ï¼ /// </summary> [SugarColumn(ColumnName = "FUnitID")] public string? FUnitId { get; set; } /// <summary> /// ä»ä½ï¼ç©æå¨ä»åºä¸çå ·ä½åå¨ä½ç½®ï¼ /// </summary> [SugarColumn(ColumnName = "FSTOCKLOCID")] public string? FstockLocId { get; set; } /// <summary> /// æ¹å·ï¼ç©æçäº§æ¹æ¬¡ç¼å·ï¼ /// </summary> [SugarColumn(ColumnName = "FLot")] public string? FLot { get; set; } /// <summary> /// 计åè·è¸ªå·ï¼è·è¸ªç©æè®¡åï¼ /// </summary> [SugarColumn(ColumnName = "FMtoNo")] public string? FMtoNo { get; set; } } MES.Service/service/BasicData/MesCgthSqManager.cs
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,190 @@ using MES.Service.DB; using MES.Service.Dto.webApi; using MES.Service.Modes; using MES.Service.util; using SqlSugar; namespace MES.Service.service; public class MesCgthSqManager : Repository<MesCgthSq> { // æç»è¡¨ç®¡çå¨ï¼ç¨äºå¤çæç»æ°æ®ï¼ //private readonly MesCgthSqDetailManager _detailManager = new(); /// <summary> /// æ¹éä¿åéè´éè´§åï¼ä¸»è¡¨+æç»ï¼ /// </summary> public bool SaveList(List<ErpCgth> erpCgthList) { // éæ¡å¤çï¼å ¨é¨æåæè¿åtrue var result = erpCgthList.Select(Save).ToList(); return result.All(b => b); } /// <summary> /// ä¿åéè´éè´§åï¼ä¸»è¡¨+æç»ï¼ /// </summary> public bool Save(ErpCgth erpCgth) { // ä»ERPæ°æ®ä¸æå主表åæç»è¡¨DTO var erpMain = erpCgth.ErpCgtha; var erpDetails = erpCgth.ErpCgthB; // æ å°ä¸»è¡¨åæç»è¡¨å®ä½ var mesMain = MapErpCgthaToMesCgthSq(erpMain); var mesDetails = MapErpCgthBToMesCgthSqDetail(erpDetails, mesMain.Id); // å ³è主表ID // 使ç¨äºå¡å¤ç主ä»è¡¨èå¨æä½ return UseTransaction(db => { // æ ¹æ®æä½ç±»åï¼TYPEï¼æ§è¡ä¸åé»è¾ï¼å设TYPE=1æ°å¢ï¼2æ´æ°ï¼3å é¤ï¼ switch (erpMain.TYPE) { case "1": // æ°å¢ case "2": // æ´æ°ï¼ç»ä¸èµ°æ°å¢ææ´æ°é»è¾ï¼ case "4": return SaveOrUpdateData(db, mesMain, mesDetails) ? 1 : 0; case "3": // å é¤ return DeleteData(db, mesMain, mesDetails) ? 1 : 0; default: throw new NotImplementedException($"æä½ç±»å[{erpMain.TYPE}]æªå®ç°"); } }) > 0; } /// <summary> /// æ°å¢ææ´æ°æ°æ®ï¼ä¸»è¡¨+æç»ï¼ /// </summary> private bool SaveOrUpdateData(SqlSugarScope db, MesCgthSq mesMain, List<MesCgthSqDetail> mesDetails) { // 1. å¤ç主表ï¼è¥å·²åå¨åæ´æ°ï¼ä¸åå¨åæ°å¢ bool isMainExist = db.Queryable<MesCgthSq>().Where(m => m.BillNo == mesMain.BillNo).Any(); int mainResult; if (isMainExist) { // æ´æ°ä¸»è¡¨ï¼å¿½ç¥ç©ºåæ®µï¼ mainResult = db.Updateable(mesMain) .IgnoreColumns(m => m.Id) // 䏿´æ°ä¸»é® .Where(m => m.BillNo == mesMain.BillNo) .ExecuteCommand(); } else { // æ°å¢ä¸»è¡¨ï¼çæä¸»é®ï¼ mesMain.Id = Guid.NewGuid(); mainResult = db.Insertable(mesMain).ExecuteCommand(); } // 2. å¤çæç»è¡¨ï¼å å 餿§æç»ï¼åæå ¥æ°æç»ï¼ç¡®ä¿æ°æ®åæ¥ï¼ // ï¼éè¿ä¸»è¡¨ERPIDå ³èæ§æç»ï¼ int oldDetailCount = db.Deleteable<MesCgthSqDetail>() .Where(d => d.Mid == mesMain.Id) .ExecuteCommand(); // æå ¥æ°æç»ï¼å ³è主表IDï¼ int detailResult = mesDetails.Count > 0 ? db.Insertable(mesDetails).ExecuteCommand() : 1; // æ æç»æ¶é»è®¤æå // 3. æ ¡éªç»æ if (mainResult > 0 && detailResult > 0) { return true; } throw new NotImplementedException("主表ææç»ä¿å失败"); } /// <summary> /// å 餿°æ®ï¼ä¸»è¡¨+æç»ï¼ /// </summary> private bool DeleteData(SqlSugarScope db, MesCgthSq mesMain, List<MesCgthSqDetail> mesDetails) { // å¤çERPIDä¸ºç©ºçæ åµï¼è½¬æ¢ä¸ºç»ä¸ç空å符串è¿è¡æ¯è¾ string mainErpId = mesMain.ErpId?.ToString() ?? string.Empty; // 1. å 餿ç»ï¼éè¿ä¸»è¡¨ERPIDå ³èï¼ int detailResult = db.Deleteable<MesCgthSqDetail>() .Where(d => (d.Eid.ToString() ?? string.Empty) == mainErpId) .ExecuteCommand(); // 2. å é¤ä¸»è¡¨ï¼éè¿ERPIDå ³èï¼ int mainResult = db.Deleteable<MesCgthSq>() .Where(m => (m.ErpId.ToString() ?? string.Empty) == mainErpId) .ExecuteCommand(); return mainResult > 0 && detailResult >= 0; // å 许æç»åæ¬ä¸åå¨ï¼>=0ï¼ } /// <summary> /// ErpCgtha æ å°å° MesCgthSqï¼ä» æ å°ErpCgthaä¸åå¨çåæ®µï¼ /// </summary> private MesCgthSq MapErpCgthaToMesCgthSq(ErpCgtha erpMain) { return new MesCgthSq { // ä¸»è¡¨æ ¸å¿å段ï¼ä» ä»ErpCgthaåå¼ï¼ ErpId = erpMain.ERPID, // ERP主表ID BillNo = erpMain.billNo, // åæ®ç¼å· Type = erpMain.TYPE, // æä½ç±»å FDate = erpMain.FDate, // éææ¥æ FDocumentStatus = erpMain.FDocumentStatus, // åæ®ç¶æ FSupplierId = erpMain.FSupplierID, // ä¾åºåID FBillTypeId = erpMain.FBillTypeID, // åæ®ç±»å FBusinessType = erpMain.FBusinessType, // ä¸å¡ç±»å ReturnType = erpMain.FMRTYPE, // éæç±»åï¼å¯¹åºErpCgthaçéæç±»åï¼ ReturnMethod = erpMain.FMRMODE, // éææ¹å¼ï¼å¯¹åºErpCgthaçéææ¹å¼ï¼ CreateBy = erpMain.FCreatorId, // å建人 FPurchaseOrgId = erpMain.FPurchaseOrgId, // éè´ç»ç» ThOrgId = erpMain.FStockOrgId, // éæç»ç» FRequireOrgId = erpMain.FRequireOrgId, // éæ±ç»ç» FMRDeptId = erpMain.FMRDeptId, // éæé¨é¨ FStockerId = erpMain.FSTOCKERID, // ä»ç®¡å FPurchaserId = erpMain.FPURCHASERID, // éè´å FMRReason = erpMain.FMRREASON, // éæåå FPurchaseDeptId = erpMain.FPURCHASEDEPTID, // éè´é¨é¨ FPurchaserGroupId = erpMain.FPURCHASERGROUPID, // éè´ç» FACCTYPE = erpMain.FACCTYPE, // éªæ¶æ¹å¼ FCreateDate = erpMain.FCreateDate, // åå»ºæ¥æ FWPVTINTEGERL6W = erpMain.F_WPVT_INTEGER_L6W, // æ«ç æ è¯ // DepotId = string.IsNullOrEmpty(erpMain.FSTOCKID) // ? null // : Convert.ToInt32(erpMain.FSTOCKID), // ä»åºIDï¼è½¬æ¢ä¸ºintï¼ SuppId = string.IsNullOrEmpty(erpMain.FSupplierID) ? null : Convert.ToInt32(erpMain.FSupplierID), // ä¾åºåIDï¼è½¬æ¢ä¸ºintï¼ // ç³»ç»èªå¨èµå¼å段 CreateDate = DateTime.Now, LastUpdateTime = DateTime.Now }; } /// <summary> /// ErpCgthB æ å°å° MesCgthSqDetailï¼ä» æ å°ErpCgthBä¸åå¨çåæ®µï¼ /// </summary> private List<MesCgthSqDetail> MapErpCgthBToMesCgthSqDetail(List<ErpCgthB> erpDetails, Guid mainId) { return erpDetails.Select(erpDetail => new MesCgthSqDetail { // å ³è主表ID Mid= mainId, // 主表IDï¼MesCgthSqçIdï¼ // æç»æ ¸å¿å段ï¼ä» ä»ErpCgthBåå¼ï¼ ErpId = string.IsNullOrEmpty(erpDetail.ERPID) ? null : Convert.ToInt32(erpDetail.ERPID), // ERPæç»ID Eid = string.IsNullOrEmpty(erpDetail.EID) ? null : Convert.ToInt32(erpDetail.EID), // å¤é¨ç³»ç»ID FsrcBillNo = erpDetail.FSRCBillNo, // æºååå· FsrcBillTypeId = erpDetail.FSRCBillTypeId, // æºåç±»å ItemId = string.IsNullOrEmpty(erpDetail.FMATERIALID) ? null : Convert.ToInt32(erpDetail.FMATERIALID), // ç©æID FUnitId = erpDetail.FUnitID, // åºååä½ DepotId = string.IsNullOrEmpty(erpDetail.FSTOCKID) ? null : Convert.ToInt64(erpDetail.FSTOCKID), // ä»åºID FstockLocId = erpDetail.FSTOCKLOCID, // ä»ä½ FLot = erpDetail.FLot, // æ¹å· SqNum = erpDetail.FRMREALQTY, // å®éæ°é Remark = erpDetail.FNOTE, // 夿³¨ FMtoNo = erpDetail.FMtoNo, // 计åè·è¸ªå· // ç³»ç»èªå¨èµå¼å段 IsFinish = false // åå§æªå®æ }).ToList(); } } MESApplication/Controllers/BasicData/MesCgthSqController.cs
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,212 @@ 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 MesCgthSqController : ControllerBase { private readonly MessageCenterManager _messageCenterManager = new(); private readonly MesCgthSqManager _mesCgthSqManager = new(); private readonly string _method = "POST"; private readonly string _tableName = "MES_CGTH_SQ"; private readonly string _baseUrl = "http://localhost:10054/api/MesCgthSq/"; /// <summary> /// ä¿åéè´éè´§ç³è¯·å /// </summary> [HttpPost("Save")] public ResponseResult Save(ErpCgth erpCgth) { // åå§åæ¶æ¯ä¸å¿å®ä½ï¼ç¨äºè®°å½æ¥å£è°ç¨æ¥å¿ï¼ var messageEntity = new MessageCenter { TableName = _tableName, Url = _baseUrl + "Save", Method = _method, Data = JsonConvert.SerializeObject(erpCgth), Status = 1, // ç¶æï¼1 - å¾ å¤ç CreateBy = "SYSTEM", // å建人æ è¯ Route = erpCgth.ErpCgtha.billNo // è·¯ç±æ è¯ï¼ä½¿ç¨åæ®ç¼å·ï¼ }; try { dynamic resultData = new ExpandoObject(); // è°ç¨ä¸å¡å±ä¿åæ¹æ³ï¼å° ERP ä¼ å ¥ç DTO 转æ¢ä¸ºå®ä½å¹¶ä¿åï¼ var saveSuccess = _mesCgthSqManager.Save(erpCgth); resultData.saveResult = saveSuccess; // æ´æ°æ¶æ¯ä¸å¿ç¶æï¼ä¿åæåï¼ messageEntity.Result = 1; // ç»æï¼1 - æå messageEntity.DealWith = 1; // å¤çç¶æï¼1 - å·²å¤ç _messageCenterManager.save(messageEntity); return new ResponseResult { status = 0, message = "ä¿åæå", data = resultData }; } catch (Exception ex) { // å¼å¸¸å¤çï¼è®°å½éè¯¯ä¿¡æ¯ messageEntity.Result = 0; // ç»æï¼0 - 失败 messageEntity.DealWith = 0; // å¤çç¶æï¼0 - æªå¤ç messageEntity.ResultData = ex.Message; // é误详æ _messageCenterManager.save(messageEntity); return ResponseResult.ResponseError(ex); } } /// <summary> /// æ¹éä¿åéè´éè´§ç³è¯·å /// </summary> [HttpPost("SaveList")] public ResponseResult SaveList(List<ErpCgth> erpCgthaList) { var messageEntity = new MessageCenter { TableName = _tableName, Url = _baseUrl + "SaveList", Method = _method, Data = JsonConvert.SerializeObject(erpCgthaList), Status = 1, CreateBy = "SYSTEM" }; try { dynamic resultData = new ExpandoObject(); var saveSuccess = _mesCgthSqManager.SaveList(erpCgthaList); resultData.totalCount = erpCgthaList.Count; resultData.successCount = saveSuccess ? erpCgthaList.Count : 0; messageEntity.Result = saveSuccess ? 1 : 0; messageEntity.DealWith = 1; _messageCenterManager.save(messageEntity); return new ResponseResult { status = 0, message = $"æ¹éä¿å宿ï¼å ± {erpCgthaList.Count} æ¡æ°æ®", data = resultData }; } catch (Exception ex) { messageEntity.Result = 0; messageEntity.DealWith = 0; messageEntity.ResultData = ex.Message; _messageCenterManager.save(messageEntity); return ResponseResult.ResponseError(ex); } } /// <summary> /// è·åéè´éè´§ç³è¯·åå表 /// </summary> [HttpGet("GetList")] public ResponseResult GetList() { try { var cgthList = _mesCgthSqManager.GetList(); return new ResponseResult { status = 0, message = "æ¥è¯¢æå", data = new { total = cgthList.Count, list = cgthList } }; } catch (Exception ex) { return ResponseResult.ResponseError(ex); } } /// <summary> /// æ ¹æ® ID è·åéè´éè´§ç³è¯·å详æ /// </summary> [HttpGet("GetById")] public ResponseResult GetById(string id) { try { var cgthEntity = _mesCgthSqManager.GetById(Guid.Parse(id)); return new ResponseResult { status = 0, message = "æ¥è¯¢æå", data = cgthEntity }; } catch (Exception ex) { return ResponseResult.ResponseError(ex); } } /// <summary> /// æ°å¢éè´éè´§ç³è¯·åï¼ç´æ¥ä¼ å ¥å®ä½ï¼ /// </summary> [HttpPost("Insert")] public ResponseResult Insert([FromBody] MesCgthSq entity) { try { // èªå¨çæä¸»é® ID entity.Id = Guid.NewGuid(); entity.CreateDate = DateTime.Now; var insertSuccess = _mesCgthSqManager.Insert(entity); return new ResponseResult { status = 0, message = insertSuccess ? "æ°å¢æå" : "æ°å¢å¤±è´¥", data = new { id = entity.Id } }; } catch (Exception ex) { return ResponseResult.ResponseError(ex); } } /// <summary> /// æ´æ°éè´éè´§ç³è¯·å /// </summary> [HttpPost("Update")] public ResponseResult Update([FromBody] MesCgthSq entity) { try { entity.LastUpdateTime = DateTime.Now; var updateSuccess = _mesCgthSqManager.Update(entity); return new ResponseResult { status = 0, message = updateSuccess ? "æ´æ°æå" : "æ´æ°å¤±è´¥", data = updateSuccess }; } catch (Exception ex) { return ResponseResult.ResponseError(ex); } } }