From 2e37035392c187b26a09a2c2edcc6133e96532cc Mon Sep 17 00:00:00 2001 From: kyy <3283105747@qq.com> Date: 星期四, 04 九月 2025 15:57:15 +0800 Subject: [PATCH] 1、收料通知单接口 2、采购订单接口加委外订单分录内码 --- MESApplication/Controllers/BasicData/MesInvItemArnController.cs | 339 +++++++++++++++++++ MES.Service/Dto/webApi/ErpSltzBList.cs | 84 ++++ MES.Service/Modes/MesRohInData.cs | 7 MES.Service/service/BasicData/MesRohInManager.cs | 32 - MES.Service/Modes/MesInvItemArn.cs | 69 ++++ MES.Service/Dto/webApi/ErpRohinData.cs | 3 MES.Service/Dto/webApi/ErpSltz.cs | 7 MES.Service/Dto/webApi/ErpSltza.cs | 55 +++ MES.Service/service/BasicData/MesInvItemArnManager.cs | 263 +++++++++++++++ MES.Service/Modes/MesInvItemArnDetail.cs | 117 ++++++ 10 files changed, 948 insertions(+), 28 deletions(-) diff --git a/MES.Service/Dto/webApi/ErpRohinData.cs b/MES.Service/Dto/webApi/ErpRohinData.cs index 91bb37d..eda56a3 100644 --- a/MES.Service/Dto/webApi/ErpRohinData.cs +++ b/MES.Service/Dto/webApi/ErpRohinData.cs @@ -53,5 +53,8 @@ public string? FDEMANDBILLENTRYSEQ { get; set; } public string? SalesOrderId { get; set; } public string? OrderLineId { get; set; } + public string? FSUBREQENTRYID { get; set; } + + } \ No newline at end of file diff --git a/MES.Service/Dto/webApi/ErpSltz.cs b/MES.Service/Dto/webApi/ErpSltz.cs new file mode 100644 index 0000000..f690bf2 --- /dev/null +++ b/MES.Service/Dto/webApi/ErpSltz.cs @@ -0,0 +1,7 @@ +namespace MES.Service.Dto.webApi; + +public class ErpSltz +{ + public ErpSltza ErpSltza { get; set; } + public List<ErpSltzBList> ErpSltzBList { get; set; } +} \ No newline at end of file diff --git a/MES.Service/Dto/webApi/ErpSltzBList.cs b/MES.Service/Dto/webApi/ErpSltzBList.cs new file mode 100644 index 0000000..befa74f --- /dev/null +++ b/MES.Service/Dto/webApi/ErpSltzBList.cs @@ -0,0 +1,84 @@ +namespace MES.Service.Dto.webApi; + +public class ErpSltzBList +{ + /// <summary> + /// 鏀舵枡閫氱煡鍗曞垎褰曞唴鐮� + /// </summary> + public string? LineNo { get; set; } + + /// <summary> + /// 璁㈠崟鍗曞彿 + /// </summary> + public string? FBillNo { get; set; } + + /// <summary> + /// 鐗╂枡缂栫爜 + /// </summary> + public string? ProductCode { get; set; } + + /// <summary> + /// 璁㈠崟鏁伴噺 + /// </summary> + public string? PurchaseQty { get; set; } + + /// <summary> + /// 鏈搴旀敹鏁伴噺 + /// </summary> + public string? DeliveryQty { get; set; } + + /// <summary> + /// 浜よ揣鏁伴噺 + /// </summary> + public string? IncludeQty { get; set; } + + /// <summary> + /// 鏀舵枡鍗曚綅 + /// </summary> + public string? PurchaseUnit { get; set; } + + /// <summary> + /// 搴撳瓨鍗曚綅 + /// </summary> + public string? InventoryUnit { get; set; } + + /// <summary> + /// 澶囨敞 + /// </summary> + public string? Remark { get; set; } + + /// <summary> + /// 婧愬崟鍗曞彿 + /// </summary> + public string? FSrcBillNo { get; set; } + + /// <summary> + /// 婧愬崟鍒嗗綍鍐呯爜 + /// </summary> + public string? FSrcBillLine { get; set; } + + /// <summary> + /// 閿�鍞鍗曞彿 + /// </summary> + public string? SalesOrderId { get; set; } + + /// <summary> + /// 璁″垝璺熻釜鍙� + /// </summary> + public string? FMtoNo { get; set; } + + /// <summary> + /// 鎵瑰彿 + /// </summary> + public string? FLot { get; set; } + + /// <summary> + /// 鎬ユ枡鏍囪瘑 + /// </summary> + public string? urgentFlag { get; set; } + + /// <summary> + /// 浠撳簱 + /// </summary> + public string? DepotId { get; set; } +} \ No newline at end of file diff --git a/MES.Service/Dto/webApi/ErpSltza.cs b/MES.Service/Dto/webApi/ErpSltza.cs new file mode 100644 index 0000000..b82b28f --- /dev/null +++ b/MES.Service/Dto/webApi/ErpSltza.cs @@ -0,0 +1,55 @@ +namespace MES.Service.Dto.webApi; + +public class ErpSltza +{ + + /// <summary> + /// 鎿嶄綔绫诲瀷 + /// </summary> + public string? TYPE { get; set; } + + /// <summary> + /// 鍗曟嵁缂栧彿 + /// </summary> + public string? billNo { get; set; } + + /// <summary> + /// 渚涘簲鍟� + /// </summary> + public string? SupplierId { get; set; } + + /// <summary> + /// 鍗曟嵁鏃ユ湡 + /// </summary> + public string? FDate { get; set; } + + /// <summary> + /// 澶囨敞 + /// </summary> + public string? Remark { get; set; } + + /// <summary> + /// 鏄惁渚涘崗 + /// </summary> + public string? F_ZJXF_sfgx { get; set; } + + /// <summary> + /// 鏀舵枡閫氱煡鍗曡〃澶村唴鐮� + /// </summary> + public string? erpId { get; set; } + + /// <summary> + /// 鍒涘缓浜� + /// </summary> + public string? createBy { get; set; } + + /// <summary> + /// 鏄惁濮斿 + /// </summary> + public string? fType { get; set; } + + /// <summary> + /// 鏀舵枡缁勭粐 + /// </summary> + public string? ReceiveOrgId { get; set; } +} \ No newline at end of file diff --git a/MES.Service/Modes/MesInvItemArn.cs b/MES.Service/Modes/MesInvItemArn.cs new file mode 100644 index 0000000..802d235 --- /dev/null +++ b/MES.Service/Modes/MesInvItemArn.cs @@ -0,0 +1,69 @@ +using SqlSugar; + +namespace MES.Service.Modes; + +/// <summary> +/// 鏀舵枡鍗曡〃锛堝搴擬ES_INV_ITEM_ARN琛級 +/// </summary> +[SugarTable("MES_INV_ITEM_ARN")] +public class MesInvItemArn +{ + /// <summary> + /// 璁板綍鍞竴鏍囪瘑锛堜富閿級 + /// </summary> + [SugarColumn(ColumnName = "GUID", IsPrimaryKey = true)] + public Guid Id { get; set; } + /// <summary> + /// 鏀舵枡鍗曞彿 + /// </summary> + [SugarColumn(ColumnName = "bill_no")] + public string? BillNo { get; set; } + + /// <summary> + /// 渚涘簲鍟嗙紪鍙� + /// </summary> + [SugarColumn(ColumnName = "supp_id")] + public string? SuppId { get; set; } + + /// <summary> + /// 鍗曟嵁鏃ユ湡 + /// </summary> + [SugarColumn(ColumnName = "create_date")] + public DateTime? CreateDate { get; set; } + + /// <summary> + /// 澶囨敞淇℃伅 + /// </summary> + [SugarColumn(ColumnName = "remark")] + public string? Remark { get; set; } + + /// <summary> + /// 鏄惁srm锛�0鍚︺��1鏄級 + /// </summary> + [SugarColumn(ColumnName = "IS_SRM")] + public int? IsSrm { get; set; } + + /// <summary> + /// ERPID + /// </summary> + [SugarColumn(ColumnName = "ebeln_k3id")] + public string? EbelnK3id { get; set; } + + /// <summary> + /// 鍒涘缓浜� + /// </summary> + [SugarColumn(ColumnName = "create_by")] + public string? CreateBy { get; set; } + + /// <summary> + /// 鏄惁濮斿 + /// </summary> + [SugarColumn(ColumnName = "f_type")] + public bool? FType { get; set; } + + /// <summary> + /// 鏀舵枡缁勭粐 + /// </summary> + [SugarColumn(ColumnName = "ReceiveOrgId")] + public string? ReceiveOrgId { get; set; } +} \ No newline at end of file diff --git a/MES.Service/Modes/MesInvItemArnDetail.cs b/MES.Service/Modes/MesInvItemArnDetail.cs new file mode 100644 index 0000000..0ee4404 --- /dev/null +++ b/MES.Service/Modes/MesInvItemArnDetail.cs @@ -0,0 +1,117 @@ +using SqlSugar; + +namespace MES.Service.Modes; + +/// <summary> +/// 鏀舵枡鍗曟槑缁嗚〃锛堝搴擬ES_INV_ITEM_ARN_DETAIL琛級 +/// </summary> +[SugarTable("MES_INV_ITEM_ARN_DETAIL")] +public class MesInvItemArnDetail +{ + // /// <summary> + // /// 鏀舵枡閫氱煡鍗曞垎褰曞唴鐮� + // /// </summary> + // [SugarColumn(IsPrimaryKey = true)] // 榛樿涓轰富閿紙鑻ュ疄闄呬富閿笉鏄瀛楁锛屽彲鏍规嵁涓氬姟璋冩暣涓婚敭閰嶇疆锛� + // public int? LineNo { get; set; } + + /// <summary> + /// 閲囪喘鍗曞彿 + /// </summary> + [SugarColumn(ColumnName = "ebeln")] + public string? Ebeln { get; set; } + /// <summary> + /// 鏄庣粏琛ㄨ褰曞敮涓�鏍囪瘑锛堜富閿級 + /// </summary> + [SugarColumn(ColumnName = "GUID", IsPrimaryKey = true)] + public Guid Id { get; set; } + + /// <summary> + /// 鍏宠仈涓昏〃锛圡ES_INV_ITEM_ARN锛夌殑 ID + /// </summary> + [SugarColumn(ColumnName = "parent_Guid")] + public Guid? Mid { get; set; } + + /// <summary> + /// 鐗╂枡缂栫爜 + /// </summary> + [SugarColumn(ColumnName = "item_id")] + public int? ItemId { get; set; } + + /// <summary> + /// 閲囪喘璁㈠崟鏁伴噺 + /// </summary> + [SugarColumn(ColumnName = "ebeln_qty")] + public decimal? EbelnQty { get; set; } + + /// <summary> + /// 鏈搴旀敹鏁伴噺 + /// </summary> + [SugarColumn(ColumnName = "sub_qty")] + public decimal? SubQty { get; set; } + + /// <summary> + /// 鏈瀹炴敹鏁伴噺 + /// </summary> + [SugarColumn(ColumnName = "quantity")] + public decimal? Quantity { get; set; } + + // /// <summary> + // /// 閲囪喘鍗曚綅 + // /// </summary> + // [SugarColumn] // 鏈彁渚涘叿浣揗ES鏍囪瘑锛岄粯璁ゆ寜灞炴�у悕鏄犲皠锛堣嫢瀹為檯瀛楁鍚嶄笉鍚岋紝闇�琛ュ厖ColumnName锛� + // public string? PurchaseUnit { get; set; } + // + // /// <summary> + // /// 搴撳瓨鍗曚綅 + // /// </summary> + // [SugarColumn] // 鏈彁渚涘叿浣揗ES鏍囪瘑锛岄粯璁ゆ寜灞炴�у悕鏄犲皠锛堣嫢瀹為檯瀛楁鍚嶄笉鍚岋紝闇�琛ュ厖ColumnName锛� + // public string? InventoryUnit { get; set; } + + /// <summary> + /// 澶囨敞 + /// </summary> + [SugarColumn(ColumnName = "memo")] + public string? Memo { get; set; } + + /// <summary> + /// 閲囪喘鍗旾D + /// </summary> + [SugarColumn(ColumnName = "ebeln_k3id")] + public int? EbelnK3id { get; set; } + + /// <summary> + /// 閲囪喘鍗曡ID + /// </summary> + [SugarColumn(ColumnName = "line_k3id")] + public int? LineK3id { get; set; } + + // /// <summary> + // /// 閿�鍞鍗曞彿 + // /// </summary> + // [SugarColumn] // 鏈彁渚涘叿浣揗ES鏍囪瘑锛岄粯璁ゆ寜灞炴�у悕鏄犲皠锛堣嫢瀹為檯瀛楁鍚嶄笉鍚岋紝闇�琛ュ厖ColumnName锛� + // public string? SalesOrderId { get; set; } + // + // /// <summary> + // /// 璁″垝璺熻釜鍙� + // /// </summary> + // [SugarColumn] // 鏈彁渚涘叿浣揗ES鏍囪瘑锛岄粯璁ゆ寜灞炴�у悕鏄犲皠锛堣嫢瀹為檯瀛楁鍚嶄笉鍚岋紝闇�琛ュ厖ColumnName锛� + // public string? FMtoNo { get; set; } + // + // /// <summary> + // /// 鎵瑰彿 + // /// </summary> + // [SugarColumn] // 鏈彁渚涘叿浣揗ES鏍囪瘑锛岄粯璁ゆ寜灞炴�у悕鏄犲皠锛堣嫢瀹為檯瀛楁鍚嶄笉鍚岋紝闇�琛ュ厖ColumnName锛� + // public string? FLot { get; set; } + + /// <summary> + /// 鎬ユ枡鏍囪瘑 + /// </summary> + [SugarColumn(ColumnName = "urgent_flag")] + public bool? UrgentFlag { get; set; } + + // /// <summary> + // /// 鏀惰揣浠撳簱缂栧彿 + // /// </summary> + // [SugarColumn(ColumnName = "FSTOCKID")] + // public string? FStockId { get; set; } +} \ No newline at end of file diff --git a/MES.Service/Modes/MesRohInData.cs b/MES.Service/Modes/MesRohInData.cs index 271c45a..d7ad04c 100644 --- a/MES.Service/Modes/MesRohInData.cs +++ b/MES.Service/Modes/MesRohInData.cs @@ -355,4 +355,11 @@ /// </summary> [SugarColumn(ColumnName = "FDEMANDBILLNO_LINE")] public string? FdemandbillnoLine { get; set; } + + /// <summary> + /// 濮斿璁㈠崟鍒嗗綍鍐呯爜 + /// </summary> + [SugarColumn(ColumnName = "FSUBREQENTRYID")] + public string? FSUBREQENTRYID { get; set; } + } \ No newline at end of file diff --git a/MES.Service/service/BasicData/MesInvItemArnManager.cs b/MES.Service/service/BasicData/MesInvItemArnManager.cs new file mode 100644 index 0000000..53e92ad --- /dev/null +++ b/MES.Service/service/BasicData/MesInvItemArnManager.cs @@ -0,0 +1,263 @@ +using MES.Service.DB; +using MES.Service.Dto.webApi; +using MES.Service.Modes; +using MES.Service.util; +using SqlSugar; +using System; +using System.Collections.Generic; +using System.Linq; + +namespace MES.Service.service; + +/// <summary> +/// 鏀舵枡鍗曟暟鎹鐞嗙被锛堝鐞咵RP鏀舵枡鍗曟暟鎹悓姝ュ埌MES鏀舵枡鍗曡〃锛� +/// 鍏宠仈涓昏〃锛歁esInvItemArn锛屾槑缁嗚〃锛歁esInvItemArnDetail +/// 鍏宠仈ERP DTO锛欵rpSltz锛堣仛鍚堢被锛夈�丒rpSltza锛圗RP涓昏〃锛夈�丒rpSltzBList锛圗RP鏄庣粏锛� +/// </summary> +public class MesInvItemArnManager : Repository<MesInvItemArn> +{ + /// <summary> + /// 鎵归噺淇濆瓨鏀舵枡鍗曪紙涓昏〃+鏄庣粏锛�- 浜嬪姟淇濊瘉鎵归噺鎿嶄綔涓�鑷存�� + /// </summary> + /// <param name="erpSltzList">ERP鏀舵枡鍗曞垪琛紙鍚富琛�+鏄庣粏锛�</param> + /// <returns>鍏ㄩ儴鎴愬姛杩斿洖true锛屽惁鍒檉alse</returns> + public bool SaveList(List<ErpSltz> erpSltzList) + { + if (erpSltzList == null || !erpSltzList.Any()) + throw new ArgumentNullException(nameof(erpSltzList), "寰呬繚瀛樼殑鏀舵枡鍗曞垪琛ㄤ笉鑳戒负绌�"); + + // 淇锛氱敤浜嬪姟鍖呰9鎵归噺鎿嶄綔锛岀‘淇濇暟鎹竴鑷存�� + return UseTransaction(db => + { + foreach (var erpSltz in erpSltzList) + { + // 淇锛氳皟鐢ㄤ簨鍔″唴鐨凷ave鏂规硶锛屼紶鍏b瀹炰緥 + if (!Save(db, erpSltz)) + { + return 0; // 鍗曟潯澶辫触锛屼簨鍔″洖婊� + } + } + return 1; // 鍏ㄩ儴鎴愬姛 + }) > 0; + } + + /// <summary> + /// 鍗曟潯淇濆瓨鏀舵枡鍗曪紙涓昏〃+鏄庣粏锛�- 浜嬪姟鍐呰皟鐢紙淇璁块棶淇グ绗︼紝纭繚浜嬪姟鍐呭彲鐢級 + /// </summary> + /// <param name="db">浜嬪姟鍐呯殑SqlSugar瀹炰緥</param> + /// <param name="erpSltz">ERP鏀舵枡鍗曪紙鍚富琛�+鏄庣粏锛�</param> + /// <returns>鍗曟潯澶勭悊鎴愬姛杩斿洖true</returns> + private bool Save(SqlSugarScope db, ErpSltz erpSltz) + { + // 1. 鍙傛暟鏍¢獙 + if (erpSltz == null) + throw new ArgumentNullException(nameof(erpSltz), "鏀舵枡鍗曟暟鎹笉鑳戒负绌�"); + if (erpSltz.ErpSltza == null) + throw new ArgumentNullException(nameof(erpSltz.ErpSltza), "鏀舵枡鍗曚富琛ㄦ暟鎹笉鑳戒负绌�"); + + // 2. 鎻愬彇ERP涓昏〃鍜屾槑缁嗘暟鎹� + var erpMain = erpSltz.ErpSltza; + var erpDetails = erpSltz.ErpSltzBList ?? new List<ErpSltzBList>(); + + // 3. 淇锛氱敤浜嬪姟鍐呯殑db鏌ヨ锛岀‘淇濇暟鎹竴鑷存�� + Guid mainId = GetOrCreateMainId(db, erpMain); + + // 4. 鏄犲皠ERP鏁版嵁鍒癕ES瀹炰綋锛堜慨澶嶅瓧娈垫敞閲婏紝琛ュ厖鍏抽敭灞炴�э級 + var mesMain = MapErpSltzaToMesInvItemArn(erpMain, mainId); + var mesDetails = MapErpSltzBListToMesInvItemArnDetail(erpDetails, mainId); + + // 5. 鏍规嵁鎿嶄綔绫诲瀷澶勭悊鏁版嵁 + switch (erpMain.TYPE?.Trim()) + { + case "1": // 鏂板 + case "2": // 鏇存柊 + return HandleSaveOrUpdate(db, mesMain, mesDetails, mainId); + case "3": // 鍒犻櫎 + return HandleDelete(db, mesMain, mesDetails, mainId); + default: + throw new NotImplementedException($"鏈疄鐜扮殑鏀舵枡鍗曟搷浣滅被鍨嬶細{erpMain.TYPE}锛堟敮鎸佺被鍨嬶細1-鏂板锛�2-鏇存柊锛�3-鍒犻櫎锛�"); + } + } + + /// <summary> + /// 鍗曟潯淇濆瓨鏀舵枡鍗曪紙涓昏〃+鏄庣粏锛�- 瀵瑰鍏紑鎺ュ彛锛堜緵鎺у埗鍣ㄨ皟鐢級 + /// </summary> + /// <param name="erpSltz">ERP鏀舵枡鍗曟暟鎹紙鍚富琛�+鏄庣粏锛�</param> + /// <returns>淇濆瓨鎴愬姛杩斿洖true</returns> + public bool Save(ErpSltz erpSltz) + { + if (erpSltz == null) + throw new ArgumentNullException(nameof(erpSltz), "鏀舵枡鍗曟暟鎹笉鑳戒负绌�"); + if (erpSltz.ErpSltza == null) + throw new ArgumentNullException(nameof(erpSltz.ErpSltza), "鏀舵枡鍗曚富琛ㄦ暟鎹笉鑳戒负绌�"); + + // 浜嬪姟鍐呭鐞嗕富浠庤〃淇濆瓨 + return UseTransaction(db => + { + return Save(db, erpSltz) ? 1 : 0; + }) > 0; + } + + /// <summary> + /// 鎻愬墠鑾峰彇鎴栫敓鎴怣ES涓昏〃ID锛堜慨澶嶏細鐢ㄤ簨鍔″唴db鏌ヨ锛� + /// </summary> + private Guid GetOrCreateMainId(SqlSugarScope db, ErpSltza erpMain) + { + if (string.IsNullOrEmpty(erpMain.billNo)) + throw new ArgumentException("ERP鏀舵枡鍗曞崟鎹彿涓嶈兘涓虹┖锛屾棤娉曠‘瀹氫富琛ㄥ敮涓�鎬�", nameof(erpMain.billNo)); + + // 淇锛氱敤浜嬪姟鍐呯殑db鏌ヨ锛岃�岄潪Context + var existingMain = db.Queryable<MesInvItemArn>() + .Where(m => m.BillNo == erpMain.billNo) + .First(); + + return existingMain != null + ? existingMain.Id + : Guid.NewGuid(); + } + + /// <summary> + /// 澶勭悊鏀舵枡鍗曟柊澧�/鏇存柊锛堜富琛�+鏄庣粏锛� + /// </summary> + private bool HandleSaveOrUpdate(SqlSugarScope db, MesInvItemArn mesMain, List<MesInvItemArnDetail> mesDetails, Guid mainId) + { + mesMain.Id = mainId; + bool isMainExist = db.Queryable<MesInvItemArn>().Where(m => m.Id == mainId).Any(); + int mainOperateResult; + + if (isMainExist) + { + mainOperateResult = db.Updateable(mesMain) + .IgnoreColumns(m => new { m.CreateDate }) + .Where(m => m.Id == mainId) + .ExecuteCommand(); + } + else + { + mesMain.CreateDate = DateTime.Now; + mainOperateResult = db.Insertable(mesMain).ExecuteCommand(); + } + + // 澶勭悊鏄庣粏 + int deleteOldDetailResult = db.Deleteable<MesInvItemArnDetail>() + .Where(d => d.Mid == mainId) + .ExecuteCommand(); + + int insertNewDetailResult = mesDetails.Count > 0 + ? db.Insertable(mesDetails).ExecuteCommand() + : 1; + + return mainOperateResult > 0 && (deleteOldDetailResult >= 0 && insertNewDetailResult > 0); + } + + /// <summary> + /// 澶勭悊鏀舵枡鍗曞垹闄わ紙涓昏〃+鏄庣粏锛� + /// </summary> + private bool HandleDelete(SqlSugarScope db, MesInvItemArn mesMain, List<MesInvItemArnDetail> mesDetails, Guid mainId) + { + db.Deleteable<MesInvItemArnDetail>().Where(d => d.Mid == mainId).ExecuteCommand(); + int mainDeleteResult = db.Deleteable<MesInvItemArn>().Where(m => m.Id == mainId).ExecuteCommand(); + return mainDeleteResult >= 0; + } + + /// <summary> + /// ERP涓昏〃鏄犲皠鍒癕ES涓昏〃锛堜慨澶嶏細鍙栨秷鍏抽敭瀛楁娉ㄩ噴锛屼慨姝Type閫昏緫锛� + /// </summary> + private MesInvItemArn MapErpSltzaToMesInvItemArn(ErpSltza erpMain, Guid mainId) + { + // 鍗曟嵁鏃ユ湡杞崲 + DateTime.TryParse(erpMain.FDate, out DateTime parsedDate); + // 鏄惁SRM杞崲锛�0-鍚︼紝1-鏄級 + int.TryParse(erpMain.F_ZJXF_sfgx, out int isSrm); + // 渚涘簲鍟咺D杞崲锛堝瓧绗︿覆鐩存帴璧嬪�硷紝鍖归厤MES瀛楁绫诲瀷锛� + string suppId = string.IsNullOrEmpty(erpMain.SupplierId) ? null : erpMain.SupplierId.Trim(); + // 淇锛氣�滄槸鍚﹀澶栤�濋�昏緫锛堝亣璁綞RP鐨刦Type鏄��1鈥�=鏄紝鈥�0鈥�=鍚︼紝鎴朾ool瀛楃涓诧級 + bool isOutsourcing = false; + if (!string.IsNullOrEmpty(erpMain.fType)) + { + isOutsourcing = erpMain.fType.Trim() == "1" || erpMain.fType.Trim().Equals("true", StringComparison.OrdinalIgnoreCase); + } + + return new MesInvItemArn + { + // 淇锛氬彇娑堝叧閿瓧娈垫敞閲婏紝琛ュ厖璧嬪�� + Id = mainId, + BillNo = erpMain.billNo?.Trim() ?? throw new ArgumentException("鏀舵枡鍗曞崟鎹彿涓嶈兘涓虹┖"), + SuppId = suppId, + CreateDate = parsedDate == DateTime.MinValue ? null : (DateTime?)parsedDate, + Remark = erpMain.Remark?.Trim(), + IsSrm = isSrm, + EbelnK3id = erpMain.erpId?.Trim(), // ERP涓昏〃ID锛堝搴攅beln_k3id锛� + CreateBy = erpMain.createBy?.Trim() ?? "SYSTEM", // 榛樿涓虹郴缁� + FType = isOutsourcing, // 淇锛氭纭殑鏄惁濮斿閫昏緫 + ReceiveOrgId = erpMain.ReceiveOrgId?.Trim(), + // LastUpdateUser = erpMain.FCreatorId?.Trim() ?? "SYSTEM", + // LastUpdateTime = DateTime.Now, + // IsOut = false, // 鍒濆鏈嚭搴� + // Status = false // 鍒濆鏈鏍� + }; + } + + /// <summary> + /// ERP鏄庣粏鏄犲皠鍒癕ES鏄庣粏锛堜慨澶嶏細鍙栨秷鍏抽敭瀛楁娉ㄩ噴锛屼慨姝belnK3id杞崲锛� + /// </summary> + private List<MesInvItemArnDetail> MapErpSltzBListToMesInvItemArnDetail(List<ErpSltzBList> erpDetails, Guid mainId) + { + return erpDetails.Select(erpDetail => + { + // 鏁板�肩被鍨嬪畨鍏ㄨ浆鎹� + int.TryParse(erpDetail.LineNo, out int lineNo); // 鏄庣粏涓婚敭 + int.TryParse(erpDetail.ProductCode, out int itemId); // 鐗╂枡缂栫爜 + decimal.TryParse(erpDetail.PurchaseQty, out decimal purchaseQty); // 閲囪喘璁㈠崟鏁伴噺 + decimal.TryParse(erpDetail.DeliveryQty, out decimal deliveryQty); // 鏈搴旀敹鏁伴噺 + decimal.TryParse(erpDetail.IncludeQty, out decimal includeQty); // 鏈瀹炴敹鏁伴噺 + // 淇锛氱敤閲囪喘鍗旾D瀛楁锛坋beln_k3id锛夎浆int锛岃�岄潪婧愬崟鍗曞彿 + int.TryParse(erpDetail.FSrcBillNo, out int ebelnK3id); + int.TryParse(erpDetail.FSrcBillLine, out int lineK3id); // 閲囪喘鍗曡ID + bool.TryParse(erpDetail.urgentFlag, out bool urgentFlag); // 鎬ユ枡鏍囪瘑 + + return new MesInvItemArnDetail + { + // 淇锛氬彇娑堝叧閿瓧娈垫敞閲婏紝琛ュ厖璧嬪�� + // LineNo = lineNo, // 鏄庣粏涓婚敭锛堝繀椤昏祴鍊硷級 + Mid = mainId, // 澶栭敭锛堝叧鑱斾富琛↖D锛屽繀椤昏祴鍊硷級 + Ebeln = erpDetail.FBillNo?.Trim(), // 閲囪喘鍗曞彿 + ItemId = itemId, + EbelnQty = purchaseQty, + SubQty = deliveryQty, + Quantity = includeQty, + // PurchaseUnit = erpDetail.PurchaseUnit?.Trim(), // 閲囪喘鍗曚綅锛堣ˉ鍏呰祴鍊硷級 + // InventoryUnit = erpDetail.InventoryUnit?.Trim(), // 搴撳瓨鍗曚綅锛堣ˉ鍏呰祴鍊硷級 + Memo = erpDetail.Remark?.Trim(), + EbelnK3id = ebelnK3id, // 淇锛氭纭殑閲囪喘鍗旾D杞崲 + LineK3id = lineK3id, + // SalesOrderId = erpDetail.SalesOrderId?.Trim(), // 閿�鍞鍗曞彿锛堣ˉ鍏呰祴鍊硷級 + // FMtoNo = erpDetail.FMtoNo?.Trim(), // 璁″垝璺熻釜鍙凤紙琛ュ厖璧嬪�硷級 + // FLot = erpDetail.FLot?.Trim(), // 鎵瑰彿锛堣ˉ鍏呰祴鍊硷級 + UrgentFlag = urgentFlag + //FStockId = erpDetail.DepotId?.Trim() // 鏀惰揣浠撳簱缂栧彿 + }; + }).ToList(); + } + + /// <summary> + /// 鎸夊崟鎹彿鏌ヨMES鏀舵枡鍗曪紙涓昏〃+鏄庣粏锛� + /// </summary> + public (MesInvItemArn main, List<MesInvItemArnDetail> details) GetByBillNo(string billNo) + { + if (string.IsNullOrEmpty(billNo)) + throw new ArgumentNullException(nameof(billNo), "鏌ヨ鏉′欢鍗曟嵁鍙蜂笉鑳戒负绌�"); + + var main = Context.Queryable<MesInvItemArn>() + .Where(m => m.BillNo == billNo) + .First(); + + var details = main != null + ? Context.Queryable<MesInvItemArnDetail>() + .Where(d => d.Mid == main.Id) + .ToList() + : new List<MesInvItemArnDetail>(); + + return (main, details); + } +} \ No newline at end of file diff --git a/MES.Service/service/BasicData/MesRohInManager.cs b/MES.Service/service/BasicData/MesRohInManager.cs index 217fa4c..b6a6442 100644 --- a/MES.Service/service/BasicData/MesRohInManager.cs +++ b/MES.Service/service/BasicData/MesRohInManager.cs @@ -90,21 +90,16 @@ { var eid = long.Parse(rohIn.id); var mesRohIn = new MesRohIn(); - - var single = base.GetSingle(it => it.EbelnK3id == eid); if (single != null) mesRohIn.Guid = single.Guid; - mesRohIn.EbelnK3id = eid; mesRohIn.BillNo = rohIn.FBillNo; mesRohIn.DocumentStatus = rohIn.FDocumentStatus; mesRohIn.DocumentType = rohIn.FBillTypeID; mesRohIn.BusinessType = rohIn.FBusinessType; - if (rohIn.FDate != null) mesRohIn.PurchaseDate = DateTime.ParseExact(rohIn.FDate, "yyyy-MM-dd HH:mm:ss", null); - mesRohIn.Supplier = rohIn.FSupplierId; mesRohIn.CloseStatus = rohIn.FCloseStatus; mesRohIn.PurchaseOrg = rohIn.FPurchaseOrgId; @@ -117,25 +112,19 @@ mesRohIn.Remarks = rohIn.Remarks; mesRohIn.CancellationStatus = rohIn.FCancelStatus; mesRohIn.CancellationPerson = rohIn.FCancellerId; - if (rohIn.FCancelDate != null) if (!mesRohIn.CancellationPerson.IsNullOrEmpty()) mesRohIn.CancellationDate = DateTime.ParseExact(rohIn.FCancelDate, "yyyy-MM-dd HH:mm:ss", null); - mesRohIn.CreateBy = rohIn.FCreatorId; - if (rohIn.FCreateDate != null) mesRohIn.CreateDate = DateTime.ParseExact(rohIn.FCreateDate, "yyyy-MM-dd HH:mm:ss", null); - mesRohIn.LastupdateBy = rohIn.FModifierId; - if (rohIn.FModifyDate != null) mesRohIn.LastupdateDate = DateTime.ParseExact(rohIn.FModifyDate, "yyyy-MM-dd HH:mm:ss", null); - mesRohIn.ErpCheckBy = rohIn.FApproverId; mesRohIn.ErpCheckDate = rohIn.FApproveDate; mesRohIn.Changereason = rohIn.FChangeReason; @@ -143,10 +132,8 @@ ? DateTime.ParseExact(rohIn.Prearrivaldate, "yyyy-MM-dd HH:mm:ss", null) : null; - mesRohIn.ReceiveOrgId = rohIn.FReceiveOrgId; mesRohIn.ProviderId = rohIn.FProviderId; - mesRohIn.Anred = rohIn.FTContact; mesRohIn.Telf1 = rohIn.Fmobilephone; mesRohIn.FixedTelephone = rohIn.FixedTelephone; @@ -195,21 +182,8 @@ BusinessClose = s.FMRPCloseStatus, BusinessFreeze = s.FMRPFreezeStatus, Freezer = s.FFreezerId, - //FreezeTime = !string.IsNullOrEmpty(s.FFreezeDate) - // && DateTime.TryParseExact(s.FFreezeDate, - // new[] { "yyyy-MM-dd HH:mm:ss", "yyyy-MM-dd" }, // 鏀寔澶氱鏍煎紡 - // CultureInfo.InvariantCulture, - // DateTimeStyles.None, - // out var parsedDate) - // && parsedDate > new DateTime(1900, 1, 1) - // ? parsedDate - // : (DateTime?)null, BusinessTerminate = s.FMRPTerminateStatus, Terminator = s.FTerminaterId, - //TerminateTime = s.FTerminateDate != null - // ? DateTime.ParseExact(s.FTerminateDate, - // "yyyy-MM-dd HH:mm:ss", null) - // : null, TotalReceivedQty = Convert.ToDecimal(s.FReceiveQty), //绱鏀舵枡鏁� RemainingReceivedQty = Convert.ToDecimal(s.FRemainReceiveQty), @@ -237,7 +211,9 @@ DemandDepartment = s.FRequireDeptId, ReceivingDepartment = s.FReceiveDeptId, SalesOrderId = s.SalesOrderId, - OrderLineId = s.OrderLineId + OrderLineId = s.OrderLineId, + FSUBREQENTRYID = s.FSUBREQENTRYID + }; if (s.FFreezeDate != null) @@ -255,7 +231,7 @@ var single = rohInDataManager.GetSingle(it => it.EbelnK3id == entity.EbelnK3id); if (single != null) entity.Guid = single.Guid; - + return entity; }).ToList(); } diff --git a/MESApplication/Controllers/BasicData/MesInvItemArnController.cs b/MESApplication/Controllers/BasicData/MesInvItemArnController.cs new file mode 100644 index 0000000..5ede88f --- /dev/null +++ b/MESApplication/Controllers/BasicData/MesInvItemArnController.cs @@ -0,0 +1,339 @@ +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; + +/// <summary> +/// 鏀舵枡鍗曟帶鍒跺櫒锛堝鐞嗘敹鏂欏崟鐩稿叧API璇锋眰锛屽叧鑱擬ES_INV_ITEM_ARN涓昏〃涓嶮ES_INV_ITEM_ARN_DETAIL鏄庣粏琛級 +/// </summary> +[ApiController] +[Route("api/[controller]")] +public class MesInvItemArnController : ControllerBase +{ + // 娑堟伅涓績绠$悊鍣紙鐢ㄤ簬鎺ュ彛鏃ュ織璁板綍锛� + private readonly MessageCenterManager _messageCenterManager = new(); + // 鏀舵枡鍗曚笟鍔¢�昏緫绠$悊鍣紙鏍稿績涓氬姟澶勭悊锛� + private readonly MesInvItemArnManager _mesInvItemArnManager = new(); + + // 鎺ュ彛鍩虹閰嶇疆锛堣姹傛柟娉曘�佽〃鍚嶃�佸熀纭�URL锛� + private readonly string _method = "POST"; + private readonly string _tableName = "MES_INV_ITEM_ARN"; + private readonly string _baseUrl = "http://localhost:10054/api/MesInvItemArn/"; + + /// <summary> + /// 淇濆瓨鏀舵枡鍗曪紙鍗曟潯锛屽惈涓昏〃+鏄庣粏锛� + /// </summary> + /// <param name="erpSltz">ERP鏀舵枡鍗曟暟鎹紙鍚富琛‥rpSltza+鏄庣粏ErpSltzBList锛�</param> + /// <returns>淇濆瓨缁撴灉锛堟垚鍔�/澶辫触鐘舵��+璇︽儏锛�</returns> + [HttpPost("Save")] + public ResponseResult Save(ErpSltz erpSltz) + { + // 1. 鍒濆鍖栨秷鎭腑蹇冨疄浣擄紙璁板綍鎺ュ彛璋冪敤鏃ュ織锛岀敤浜庤拷婧級 + var messageEntity = new MessageCenter + { + TableName = _tableName, + Url = _baseUrl + "Save", + Method = _method, + Data = JsonConvert.SerializeObject(erpSltz), + Status = 1, // 鐘舵�侊細1-寰呭鐞� + CreateBy = "SYSTEM", // 鍒涘缓浜猴細绯荤粺鏍囪瘑 + Route = erpSltz?.ErpSltza?.billNo ?? "鏈煡鍗曟嵁鍙�" // 璺敱鏍囪瘑锛氱敤鏀舵枡鍗曞崟鎹彿 + }; + + try + { + dynamic resultData = new ExpandoObject(); + // 2. 璋冪敤涓氬姟灞備繚瀛樻柟娉曪紙澶勭悊涓昏〃+鏄庣粏鍚屾锛� + var saveSuccess = _mesInvItemArnManager.Save(erpSltz); + resultData.saveResult = saveSuccess; + + // 3. 鏇存柊娑堟伅涓績鐘舵�侊紙淇濆瓨鎴愬姛锛� + messageEntity.Result = 1; // 缁撴灉锛�1-鎴愬姛 + messageEntity.DealWith = 1; // 澶勭悊鐘舵�侊細1-宸插鐞� + _messageCenterManager.save(messageEntity); + + // 4. 杩斿洖鎴愬姛鍝嶅簲 + return new ResponseResult + { + status = 0, + message = "鏀舵枡鍗曚繚瀛樻垚鍔�", + data = resultData + }; + } + catch (Exception ex) + { + // 5. 寮傚父澶勭悊锛氳褰曢敊璇棩蹇� + messageEntity.Result = 0; // 缁撴灉锛�0-澶辫触 + messageEntity.DealWith = 0; // 澶勭悊鐘舵�侊細0-鏈鐞� + messageEntity.ResultData = ex.Message + (ex.InnerException != null ? $"锛堝唴閮ㄥ紓甯革細{ex.InnerException.Message}锛�" : ""); // 閿欒璇︽儏 + _messageCenterManager.save(messageEntity); + + // 6. 杩斿洖閿欒鍝嶅簲 + return ResponseResult.ResponseError(ex); + } + } + + /// <summary> + /// 鎵归噺淇濆瓨鏀舵枡鍗曪紙澶氭潯锛屽惈涓昏〃+鏄庣粏锛屼簨鍔′繚璇佷竴鑷存�э級 + /// </summary> + /// <param name="erpSltzList">ERP鏀舵枡鍗曞垪琛紙姣忔潯鍚富琛�+鏄庣粏锛�</param> + /// <returns>鎵归噺淇濆瓨缁撴灉锛堟�绘潯鏁般�佹垚鍔熸潯鏁帮級</returns> + [HttpPost("SaveList")] + public ResponseResult SaveList(List<ErpSltz> erpSltzList) + { + // 1. 鍒濆鍖栨秷鎭腑蹇冨疄浣� + var messageEntity = new MessageCenter + { + TableName = _tableName, + Url = _baseUrl + "SaveList", + Method = _method, + Data = JsonConvert.SerializeObject(erpSltzList), + Status = 1, + CreateBy = "SYSTEM", + Route = $"鎵归噺鏁版嵁锛堝叡{erpSltzList?.Count ?? 0}鏉★級" + }; + + try + { + dynamic resultData = new ExpandoObject(); + int totalCount = erpSltzList?.Count ?? 0; + + // 2. 璋冪敤涓氬姟灞傛壒閲忎繚瀛樻柟娉曪紙浜嬪姟鍐呭鐞嗭紝瑕佷箞鍏ㄦ垚鍔熻涔堝叏澶辫触锛� + var batchSaveSuccess = _mesInvItemArnManager.SaveList(erpSltzList); + + // 3. 缁勮杩斿洖鏁版嵁锛堟�绘潯鏁般�佹垚鍔熸潯鏁帮級 + resultData.totalCount = totalCount; + resultData.successCount = batchSaveSuccess ? totalCount : 0; + + // 4. 鏇存柊娑堟伅涓績鐘舵�� + messageEntity.Result = batchSaveSuccess ? 1 : 0; + messageEntity.DealWith = 1; + _messageCenterManager.save(messageEntity); + + // 5. 杩斿洖鎴愬姛鍝嶅簲 + return new ResponseResult + { + status = 0, + message = $"鏀舵枡鍗曟壒閲忎繚瀛樺畬鎴愶紝鍏眥totalCount}鏉℃暟鎹�", + data = resultData + }; + } + catch (Exception ex) + { + // 6. 寮傚父澶勭悊锛氳褰曢敊璇棩蹇� + messageEntity.Result = 0; + messageEntity.DealWith = 0; + messageEntity.ResultData = ex.Message + (ex.InnerException != null ? $"锛堝唴閮ㄥ紓甯革細{ex.InnerException.Message}锛�" : ""); + _messageCenterManager.save(messageEntity); + + // 7. 杩斿洖閿欒鍝嶅簲 + return ResponseResult.ResponseError(ex); + } + } + + /// <summary> + /// 鑾峰彇鏀舵枡鍗曞垪琛紙涓昏〃鏁版嵁锛屾敮鎸佸悗缁墿灞曞垎椤�/绛涢�夛級 + /// </summary> + /// <returns>鏀舵枡鍗曞垪琛紙鎬绘潯鏁�+鍒楄〃鏁版嵁锛�</returns> + [HttpGet("GetList")] + public ResponseResult GetList() + { + try + { + // 1. 璋冪敤涓氬姟灞傛煡璇㈠垪琛ㄦ柟娉� + var invArnList = _mesInvItemArnManager.GetList(); + + // 2. 杩斿洖鏌ヨ缁撴灉 + return new ResponseResult + { + status = 0, + message = "鏀舵枡鍗曞垪琛ㄦ煡璇㈡垚鍔�", + data = new { total = invArnList.Count, list = invArnList } + }; + } + catch (Exception ex) + { + // 3. 寮傚父澶勭悊 + return ResponseResult.ResponseError(ex); + } + } + + /// <summary> + /// 鏍规嵁ID鑾峰彇鏀舵枡鍗曡鎯咃紙鍚富琛�+鍏宠仈鏄庣粏锛� + /// </summary> + /// <param name="id">鏀舵枡鍗曚富琛↖D锛圙uid瀛楃涓诧級</param> + /// <returns>鏀舵枡鍗曚富琛�+鏄庣粏璇︽儏</returns> + // [HttpGet("GetById")] + // public ResponseResult GetById(string id) + // { + // try + // { + // // 1. 鏍¢獙ID鏍煎紡锛圙uid杞崲锛� + // if (!Guid.TryParse(id, out Guid mainId)) + // { + // return new ResponseResult + // { + // status = 1, + // message = "ID鏍煎紡閿欒锛岃浼犲叆鏈夋晥鐨凣uid瀛楃涓�", + // data = null + // }; + // } + // + // // 2. 璋冪敤涓氬姟灞傛煡璇㈣鎯呮柟娉曪紙涓昏〃+鏄庣粏锛� + // var (mainEntity, detailList) = _mesInvItemArnManager.GetByIdWithDetails(mainId); + // + // // 3. 缁勮杩斿洖鏁版嵁锛堜富琛�+鏄庣粏锛� + // var resultData = new + // { + // main = mainEntity, + // details = detailList + // }; + // + // // 4. 杩斿洖璇︽儏缁撴灉 + // return new ResponseResult + // { + // status = 0, + // message = "鏀舵枡鍗曡鎯呮煡璇㈡垚鍔�", + // data = resultData + // }; + // } + // catch (Exception ex) + // { + // // 5. 寮傚父澶勭悊 + // return ResponseResult.ResponseError(ex); + // } + // } + + /// <summary> + /// 鏍规嵁鍗曟嵁鍙疯幏鍙栨敹鏂欏崟璇︽儏锛堝惈涓昏〃+鍏宠仈鏄庣粏锛� + /// </summary> + /// <param name="billNo">鏀舵枡鍗曞崟鎹彿</param> + /// <returns>鏀舵枡鍗曚富琛�+鏄庣粏璇︽儏</returns> + [HttpGet("GetByBillNo")] + public ResponseResult GetByBillNo(string billNo) + { + try + { + // 1. 鏍¢獙鍗曟嵁鍙峰弬鏁� + if (string.IsNullOrEmpty(billNo)) + { + return new ResponseResult + { + status = 1, + message = "鍗曟嵁鍙蜂笉鑳戒负绌�", + data = null + }; + } + + // 2. 璋冪敤涓氬姟灞傛寜鍗曟嵁鍙锋煡璇㈡柟娉曪紙涓昏〃+鏄庣粏锛� + var (mainEntity, detailList) = _mesInvItemArnManager.GetByBillNo(billNo); + + // 3. 缁勮杩斿洖鏁版嵁 + var resultData = new + { + main = mainEntity, + details = detailList + }; + + // 4. 杩斿洖璇︽儏缁撴灉 + return new ResponseResult + { + status = 0, + message = $"鍗曟嵁鍙枫�恵billNo}銆戞敹鏂欏崟璇︽儏鏌ヨ鎴愬姛", + data = resultData + }; + } + catch (Exception ex) + { + // 5. 寮傚父澶勭悊 + return ResponseResult.ResponseError(ex); + } + } + + /// <summary> + /// 鏂板鏀舵枡鍗曪紙鐩存帴浼犲叆MES瀹炰綋锛岄�傜敤浜庡唴閮ㄧ郴缁熷垱寤猴級 + /// </summary> + /// <param name="entity">鏀舵枡鍗曚富琛ㄥ疄浣�</param> + /// <returns>鏂板缁撴灉锛圛D+鎴愬姛鐘舵�侊級</returns> + [HttpPost("Insert")] + public ResponseResult Insert([FromBody] MesInvItemArn entity) + { + try + { + // 1. 琛ュ叏瀹炰綋榛樿鍊硷紙涓婚敭銆佸垱寤烘椂闂达級 + entity.Id = Guid.NewGuid(); + entity.CreateDate = DateTime.Now; + entity.CreateBy = "SYSTEM"; // 榛樿涓虹郴缁熷垱寤猴紝鍙牴鎹疄闄呴渶姹傛敼涓哄綋鍓嶇櫥褰曠敤鎴� + // entity.LastUpdateTime = DateTime.Now; + // entity.LastUpdateUser = "SYSTEM"; + // entity.Status = false; // 鍒濆鐘舵�侊細鏈鏍� + // entity.IsOut = false; // 鍒濆鐘舵�侊細鏈嚭搴� + entity.IsSrm = 0; // 鍒濆鐘舵�侊細闈濻RM + + // 2. 璋冪敤涓氬姟灞傛柊澧炴柟娉� + var insertSuccess = _mesInvItemArnManager.Insert(entity); + + // 3. 杩斿洖鏂板缁撴灉 + return new ResponseResult + { + status = 0, + message = insertSuccess ? "鏀舵枡鍗曟柊澧炴垚鍔�" : "鏀舵枡鍗曟柊澧炲け璐�", + data = new { id = entity.Id, success = insertSuccess } + }; + } + catch (Exception ex) + { + // 4. 寮傚父澶勭悊 + return ResponseResult.ResponseError(ex); + } + } + + /// <summary> + /// 鏇存柊鏀舵枡鍗曪紙鐩存帴浼犲叆MES瀹炰綋锛岄�傜敤浜庡唴閮ㄧ郴缁熸洿鏂帮級 + /// </summary> + /// <param name="entity">鏀舵枡鍗曚富琛ㄥ疄浣擄紙闇�鍚獻D锛�</param> + /// <returns>鏇存柊缁撴灉锛堟垚鍔熺姸鎬侊級</returns> + // [HttpPost("Update")] + // public ResponseResult Update([FromBody] MesInvItemArn entity) + // { + // try + // { + // // 1. 鏍¢獙ID锛堝繀椤讳紶鍏ュ凡瀛樺湪鐨処D锛� + // if (entity.Id == Guid.Empty) + // { + // return new ResponseResult + // { + // status = 1, + // message = "鏇存柊澶辫触锛氭敹鏂欏崟ID涓嶈兘涓虹┖", + // data = false + // }; + // } + // + // // 2. 琛ュ叏鏇存柊瀛楁锛堟渶鍚庢洿鏂版椂闂淬�佹渶鍚庢洿鏂颁汉锛� + // entity.LastUpdateTime = DateTime.Now; + // entity.LastUpdateUser = "SYSTEM"; // 鍙敼涓哄綋鍓嶇櫥褰曠敤鎴� + // + // // 3. 璋冪敤涓氬姟灞傛洿鏂版柟娉曪紙蹇界暐鍒涘缓鏃堕棿锛岄伩鍏嶈鐩栵級 + // var updateSuccess = _mesInvItemArnManager.Update(entity, ignoreColumns: m => new { m.CreateDate }); + // + // // 4. 杩斿洖鏇存柊缁撴灉 + // return new ResponseResult + // { + // status = 0, + // message = updateSuccess ? "鏀舵枡鍗曟洿鏂版垚鍔�" : "鏀舵枡鍗曟洿鏂板け璐ワ紙鏈壘鍒板搴旀暟鎹垨鏇存柊寮傚父锛�", + // data = updateSuccess + // }; + // } + // catch (Exception ex) + // { + // // 5. 寮傚父澶勭悊 + // return ResponseResult.ResponseError(ex); + // } + // } +} \ No newline at end of file -- Gitblit v1.9.3