From 7ee2e58c300374a15c212f9145ba9d762d64e0e6 Mon Sep 17 00:00:00 2001
From: fcx <2246384483@qq.com>
Date: 星期六, 20 十二月 2025 15:58:11 +0800
Subject: [PATCH] 1.新增MES_PROJECT.cs
---
StandardPda/MES.Service/service/WomcaaManager.cs | 327 ++++++++++++++++++++++++++++++------------------------
1 files changed, 180 insertions(+), 147 deletions(-)
diff --git a/StandardPda/MES.Service/service/WomcaaManager.cs b/StandardPda/MES.Service/service/WomcaaManager.cs
index c3199ae..29f7dd7 100644
--- a/StandardPda/MES.Service/service/WomcaaManager.cs
+++ b/StandardPda/MES.Service/service/WomcaaManager.cs
@@ -1,19 +1,12 @@
-锘縰sing Dm;
-using MES.Service.DB;
+锘縰sing MES.Service.DB;
using MES.Service.Dto.webApi;
using MES.Service.Modes;
using SqlSugar;
-using System.Net.NetworkInformation;
-using System.Runtime.CompilerServices;
namespace MES.Service.service;
public class WomcaaManager : Repository<Womcaa>
{
- //褰撳墠绫诲凡缁忕户鎵夸簡 Repository 澧炪�佸垹銆佹煡銆佹敼鐨勬柟娉�
-
- //杩欓噷闈㈠啓鐨勪唬鐮佷笉浼氱粰瑕嗙洊,濡傛灉瑕侀噸鏂扮敓鎴愯鍒犻櫎 WomcaaManager.cs
-
private readonly WomcabManager _womcabManager = new();
public bool SaveList(List<ErpWOM> rohIns)
@@ -37,14 +30,13 @@
return UpdateData(db, mesWomcaa, mesWomcabs) ? 1 : 0;
case "2":
case "4":
- //kyy 2024-09-13 鍙樻洿
case "5":
return SaveOrUpdateData(db, mesWomcaa, mesWomcabs)
? 1
: 0;
default:
throw new NotImplementedException(
- $"type娌℃湁{womErpCaa.Type}杩欎釜绫诲瀷");
+ $"type绫诲瀷涓簕womErpCaa.Type}鐨勪笉瀛樺湪");
}
}) > 0;
}
@@ -58,17 +50,38 @@
db.Deleteable<Womcab>()
.Where(s => s.Eid == mesWomcaa.Erpid).ExecuteCommand();
- //鍗曟潯鎻掑叆蹇界暐绌哄瓧娈�
var orUpdate = db.Insertable(mesWomcaa)
.IgnoreColumns(true).ExecuteCommand() > 0;
- //鎵归噺鎻掑叆蹇界暐绌哄瓧娈�
var baOrUpdate = db.Insertable(mesWomcabs).PageSize(1)
.IgnoreColumnsNull()
.ExecuteCommand() > 0;
- if (orUpdate && baOrUpdate) return true;
- throw new NotImplementedException("鎻掑叆鎴栨洿鏂板け璐�");
+
+ if (orUpdate && baOrUpdate)
+ {
+ //瀹氫箟杈撳叆鍙傛暟
+ var inputParam1 = new SugarParameter("P_WORK_NO", mesWomcaa.Caa001);
+ // 瀹氫箟杈撳嚭鍙傛暟
+ var outParam1 = new SugarParameter("c_Result", null, true);
+ var outParam2 = new SugarParameter("C_MSG", null, true);
+ // 浣跨敤 SqlSugar 鎵ц瀛樺偍杩囩▼
+ Db.Ado.ExecuteCommand("BEGIN PRC_UPDATE_DAA(:P_WORK_NO,:c_Result,:C_MSG); END;", inputParam1, outParam1, outParam2);
+ // 鑾峰彇杈撳嚭鍙傛暟鐨勫��
+ int result = int.Parse((string)outParam1.Value);
+ string message = outParam2.Value == DBNull.Value ? string.Empty : (string)outParam2.Value;
+ if (result == 1)
+ {
+ //瀛樺偍杩囩▼澶辫触鍒欎簨鍔¤繘琛屽洖婊�
+ //db.Ado.RollbackTran();
+ throw new Exception(message);
+ }
+ // 鎻愪氦浜嬪姟
+ //db.Ado.CommitTran();
+ return true;
+ }
+
+ throw new NotImplementedException("鏇存柊澶辫触");
}
private bool UpdateData(SqlSugarScope db, Womcaa mesWomcaa,
@@ -86,130 +99,87 @@
private Womcaa MapErpCAAtoWomcaa(ErpCAA dto)
{
- //string jabs="0";
-
- //var entity = new Womcaa
- //{
- // Erpid = Convert.ToDecimal(dto.Id),
- // Caa001 = dto.FBillNo,
- // Caa004 = dto.FBillType,
- // Caa005 = dto.FConveyDate,
- // Caa006 = dto.FMaterialId,
- // Caa009 = dto.FUnitId,
- // Caa010 = dto.FPlanStartDate,
- // Caa011 = dto.FPlanFinishDate,
- // Caa012 = Convert.ToDecimal(dto.FQty),
- // Caa013 = dto.FBomId,
- // Caa015 = dto.FSaleOrderNo,
- // Caa015Head = dto.FSaleOrderEntrySeq,
- // Caa016 = dto.FDescription,
- // Caa017 = 0,
- // Caa018 = Convert.ToDecimal(dto.PLAN_ID),
- // Caa019 = dto.PLAN_SEQ,
- // Caa020 = dto.PLAN_NUM,
- // Caa021 = dto.FWorkShopID,
- // Fstatus = 0,
- // Caa022 = Convert.ToDecimal(dto.FQty),
- // Caa023 = dto.FStatus,
- // Caa024 = 0,
- // RoutingId = dto.FRoutingId,
- // WorkShopId = dto.FREMWorkShopId,
- // DepotCode = dto.FStockId,
- // CreateDate = dto.FDate,
- // WorkGroupId = dto.FWorkGroupId,
- // PlanId = dto.FPlannerID,
- // StockInlimith = dto.FStockInLimitH,
- // StockInlimitl = dto.FStockInLimitL,
- // Mtono = dto.FMTONO,
- // Lot = dto.FLot,
- // CreateType = dto.FCreateType,
- // SrcBillType = dto.FSrcBillType,
- // SrcBillNo = dto.FSrcBillNo,
- // SrcBillentryseq = dto.FSrcBillEntrySeq,
- // SaleOrderNo = dto.FSaleOrderNo,
- // SaleOrderEntryseq = dto.FSaleOrderEntrySeq,
- // ForceCloserid = dto.FForceCloserId,
- // CloseType = dto.FCloseType,
- // SrcSplitBillno = dto.FSrcSplitBillNo,
- // F_ZSXG_KH = dto.F_ZSXG_KH,
- // F_ZJXF_YHRQ = dto.F_ZJXF_YHRQ,
- // PrdOrg = dto.erP_SCZZ,
- // TrustOrg = dto.erP_WTZZ,
- // TbTime = DateTime.Now,
- // JaBs = "0"
- //};
-
- //if (dto.Type == "5")
- //{
- // entity.IsXg = 1;
- //}
- //else
- //{
- // entity.IsXg = 0;
- //}
-
- //if (dto.FStatus == "6" || dto.FStatus == "7")
- //{
- // entity.JaBs = "1";
- // entity.JaTime = DateTime.Now;
- //}
-
var entity = new Womcaa
{
- Erpid = Convert.ToInt32(dto.Id), /// ERPID
- Caa001 = dto.FBillNo, /// 鍗曞彿
- Caa021 = dto.FWorkShopID, /// 宸ヤ綔杞﹂棿
- RoutingId = dto.FRoutingId, /// 宸ヨ壓璺嚎
- WorkShopId = dto.FREMWorkShopId, /// 浜х嚎
- DepotCode = dto.FStockId, /// 浠撳簱
- CreateDate = dto.FDate, /// 鍗曟嵁鏃ユ湡
- Caa004 = dto.FBillType, /// 鍗曟嵁绫诲瀷
- Caa023 = dto.FStatus, /// 鐘舵�� 瀹屽伐锛屾湭瀹屽伐
- Caa006 = dto.FMaterialId, /// 浜у搧缂栫爜
- Caa009 = dto.FUnitId, /// 鍗曚綅
+ Erpid = Convert.ToInt64(dto.Id),
+ Caa001 = dto.FBillNo,
+ Caa021 = dto.FWorkShopID,
+ DepotCode = dto.FStockId,
+ CreateDate = dto.FDate,
+ Caa004 = dto.FBillType,
+ Caa023 = dto.FStatus,
+ Caa006 = dto.FMaterialId,
+ Caa009 = dto.FUnitId,
Caa012 = !string.IsNullOrEmpty(dto.FQty)
? Convert.ToDecimal(dto.FQty)
- : null, /// 鏁伴噺
- WorkGroupId = dto.FWorkGroupId, /// 璁″垝缁�
- PlanId = dto.FPlannerID, /// 璁″垝鍛�
- Caa010 = dto.FPlanStartDate, /// 棰勮寮�宸ユ椂闂�
- Caa011 = dto.FPlanFinishDate, /// 棰勮瀹屽伐鏃堕棿
- Caa005 = dto.FConveyDate, /// 寮�鍗曟棩鏈�
- StockInlimith = dto.FStockInLimitH, /// 鍏ュ簱涓婇檺
- StockInlimitl = dto.FStockInLimitL, /// 鍏ュ簱涓嬮檺
- Mtono = dto.FMTONO, /// 璁″垝璺熻釜鍙�
- Lot = dto.FLot, /// 鎵瑰彿
- Caa013 = dto.FBomId, /// BOM鐗堟
+ : null,
+ WorkGroupId = dto.FWorkGroupId,
+ PlanId = dto.FPlannerID,
+ Caa010 = dto.FPlanStartDate,
+ Caa011 = dto.FPlanFinishDate,
+ Caa005 = dto.FConveyDate,
+ StockInlimith = dto.FStockInLimitH,
+ StockInlimitl = dto.FStockInLimitL,
+ Mtono = dto.FMTONO,
+ Lot = dto.FLot,
+ Caa013 = dto.FBomId,
- CreateType = dto.FCreateType, /// 鐢熸垚鏂瑰紡
- Caa018 = !string.IsNullOrEmpty(dto.PLAN_ID)
- ? Convert.ToInt32(dto.PLAN_ID)
- : null, /// ERP婧愬崟ID
- Caa019 = dto.PLAN_SEQ, /// ERP婧愬崟琛屽彿
- Caa020 = dto.PLAN_NUM, /// ERP婧愬崟鍗曞彿(浠诲姟鍗曞彿)
- SrcBillType = dto.FSrcBillType, /// 婧愬崟绫诲瀷
- SrcBillNo = dto.FSrcBillNo, /// 婧愬崟缂栧彿
- SrcBillentryseq = dto.FSrcBillEntrySeq, /// 婧愬崟鍒嗗綍琛屽彿
- SaleOrderNo = dto.FSaleOrderNo, /// 闇�姹傚崟鎹彿
- SaleOrderEntryseq = dto.FSaleOrderEntrySeq, /// 闇�姹傚崟鎹鍙�
- ForceCloserid = dto.FForceCloserId, /// 缁撴浜�
- CloseType = dto.FCloseType, /// 缁撴绫诲瀷
- SrcSplitBillno = dto.FSrcSplitBillNo, /// 婧愭媶鍒嗚鍗曠紪鍙�
- Caa016 = dto.FDescription, /// 澶囨敞
- BTBZ = dto.BTBZ, /// 澶囨敞
- PrdOrg = dto.FPrdOrgId, /// 鐢熶骇缁勭粐ID
- TrustOrg = dto.FEnTrustOrgId, /// 濮旀墭缁勭粐ID
- Typea = dto.TypeA, /// 鍗曟嵁鐘舵��
-
-
- //娌冨皵鏂板
- WR_F_SCDD_SCTZD = dto.F_SCDD_SCTZD,
- WR_F_SCDD_XH = dto.F_SCDD_XH
+ CreateType = dto.FCreateType,
+ Caa020 = dto.FBillNo,
+ SrcBillType = dto.FSrcBillType,
+ SrcBillNo = dto.FSrcBillNo,
+ SrcBillentryseq = dto.FSrcBillEntrySeq,
+ SaleOrderNo = dto.FSaleOrderNo,
+ SaleOrderEntryseq = dto.FSaleOrderEntrySeq,
+ ForceCloserid = dto.FForceCloserId,
+ CloseType = dto.FCloseType,
+ SrcSplitBillno = dto.FSrcSplitBillNo,
+ Caa016 = dto.FDescription,
+ PrdOrg = dto.FPrdOrgId,
+ TrustOrg = dto.FEnTrustOrgId,
+ Bomtype = dto.FBOMType,
+ Bommaster = dto.FBOMMaster,
+ Bomaltrnate = dto.FBOMAlternate,
+ Bomeffedate = dto.FBOMEffeDate,
+ Routingalternate = dto.FRoutingAlternate,
+ Routingeffedate = dto.FRoutingEffeDate,
+ Mrpqty = dto.FMRPQty,
+ Actualstartdate = dto.FActualStartDate,
+ Actualcompletedate = dto.FActualCompleteDate,
+ Mosourcedoctype = dto.FMOSourceDocType,
+ Project = dto.FProject,
+ Ownerorg = dto.FOwnerOrg,
+ Createdby = dto.FCreatedBy,
+ Createdon = dto.FCreatedOn,
+ Totalstartqty = dto.FTotalStartQty,
+ Totalcompleteqty = dto.FTotalCompleteQty,
+ Totalrcvqty = dto.FTotalRcvQty,
+ Totalreworkingqty = dto.FTotalReworkingQty,
+ Reasonforrework = dto.FReasonForRework,
+ Isforcewholeset = dto.FIsForceWholeSet,
+ PREVMO = dto.FPrevMO,
+ TsDate = DateTime.Now,
+ Typea = dto.TypeA,
+ ISCANCEL = dto.FIsCancel
};
var single = base.GetSingle(it => it.Erpid == entity.Erpid);
if (single != null) entity.Id = single.Id;
+
+ //Caa006 = dto.FMaterialId,
+ var mesLinkU9 = Db.Queryable<MesLinkU9>()
+ .Where(x => x.U9Id == dto.FMaterialId
+ && x.OrgId == dto.FPrdOrgId
+ && x.TableType == "MES_ITEMS").First();
+
+ var mesLinkU9_xm = Db.Queryable<MesLinkU9>()
+ .Where(x => x.U9Id == Convert.ToString(dto.FProject)
+ && x.OrgId == dto.FPrdOrgId
+ && x.TableType == "MES_PROJECT").First();
+
+ if (mesLinkU9 != null) entity.Caa006 = mesLinkU9.MesId;
+ if (mesLinkU9_xm != null) entity.Project = Convert.ToInt64(mesLinkU9_xm.MesId);
return entity;
}
@@ -222,43 +192,106 @@
{
var womcab = new Womcab
{
- Erpid = Convert.ToDecimal(dto.ID),
+ Erpid = !string.IsNullOrEmpty(dto.ID)
+ ? Convert.ToDecimal(dto.ID)
+ : throw new Exception("瀛愯〃id涓嶅厑璁镐负绌�"),
Cab001 = dto.FBillNo,
Cab002 = dto.FSeq,
Cab003 = dto.FMaterialID,
- Cab006 = Convert.ToDecimal(dto.FNeedQty),
- MustQty = Convert.ToDecimal(dto.FMustQty),
- Cab007 = Convert.ToDecimal(dto.FPickedQty),
+ Cab006 = !string.IsNullOrEmpty(dto.FNeedQty)
+ ? Convert.ToDecimal(dto.FNeedQty)
+ : null,
+ MustQty = !string.IsNullOrEmpty(dto.FMustQty)
+ ? Convert.ToDecimal(dto.FMustQty)
+ : null,
+ Cab007 = !string.IsNullOrEmpty(dto.FPickedQty)
+ ? Convert.ToDecimal(dto.FPickedQty)
+ : null,
PositionNo = dto.FPositionNO,
SupplyOrganization = dto.FChildSupplyOrgId,
IssuingOrganization = dto.FSupplyOrg,
- OwnerId = dto.FOwnerID,
Mtono = dto.FMTONO,
Lot = dto.FLot,
DepotCode = dto.FStockID,
IssueType = dto.FIssueType,
Cab009 = dto.FUnitID,
SupplyType = dto.FSupplyType,
- Cab012 = Convert.ToDecimal(dto.FStdQty),
- Freplacegroup = Convert.ToInt32(dto.FReplaceGroup),
- UseRate = Convert.ToDecimal(dto.FUseRate),
- MaterialType = dto.FMaterialType,
- Cab014 = dto.FIsKeyItem,
- Numerator = Convert.ToDecimal(dto.FNumerator),
- Denominator = Convert.ToDecimal(dto.FDenominator),
- Pid = Convert.ToDecimal(dto.FID),
- Eid = Convert.ToDecimal(dto.FID),
- SCRAPQTY = Convert.ToDecimal(dto.FFixScrapQty),
- SCRAPRATE = Convert.ToDecimal(dto.FScrapRate),
- Typeb = dto.TypeB,
- WR_F_XIFG_Base_qtr = dto.F_XIFG_Base_qtr,
- WR_F_XIFG_Base_83g = dto.F_XIFG_Base_83g
+ Cab012 = !string.IsNullOrEmpty(dto.FStdQty)
+ ? Convert.ToDecimal(dto.FStdQty)
+ : null,
+ FreplaceGroup = !string.IsNullOrEmpty(dto.FReplaceGroup)
+ ? Convert.ToInt64(dto.FReplaceGroup)
+ : null,
+ UseRate = !string.IsNullOrEmpty(dto.FUseRate)
+ ? Convert.ToDecimal(dto.FUseRate)
+ : null,
+
+ Cab014 = !string.IsNullOrEmpty(dto.FIsKeyItem)
+ ? Convert.ToInt64(dto.FIsKeyItem)
+ : null,
+ Numerator = !string.IsNullOrEmpty(dto.FNumerator)
+ ? Convert.ToDecimal(dto.FNumerator)
+ : null,
+ Denominator = !string.IsNullOrEmpty(dto.FDenominator)
+ ? Convert.ToDecimal(dto.FDenominator)
+ : null,
+ Pid = !string.IsNullOrEmpty(dto.FID)
+ ? Convert.ToDecimal(dto.FID)
+ : throw new Exception("鐖秈d涓嶅厑璁镐负绌�"),
+ Eid = !string.IsNullOrEmpty(dto.FID)
+ ? Convert.ToDecimal(dto.FID)
+ : throw new Exception("鐖秈d涓嶅厑璁镐负绌�"),
+ Scrapqty = !string.IsNullOrEmpty(dto.FFixScrapQty)
+ ? Convert.ToDecimal(dto.FFixScrapQty)
+ : null,
+ Scraprate = !string.IsNullOrEmpty(dto.FScrapRate)
+ ? Convert.ToDecimal(dto.FScrapRate)
+ : null,
+ Project = dto.FProject,
+ Bomreqqty = dto.FBOMReqQty,
+ Materialtype = dto.FMaterialType,
+ IsOverIssue = dto.FIsOverIssue,
+ StandardMaterialscale = dto.FStandardMaterialScale,
+ Fixedmaterialnum = dto.FFixedMaterialNum,
+ IsSubstitute = dto.FIsSubstitute,
+ Substituteditem = dto.FSubstitutedItem,
+ Issueuom = dto.FIssueUOM,
+ Qpa = dto.FQPA,
+ Scraptype = dto.FScrapType,
+ Bfopportunity = dto.FBFOpportunity,
+ Supplywh = dto.FSupplyWh,
+ Mocompletesetcheck = dto.FMOCompleteSetCheck,
+ Mostartsetcheck = dto.FMOStartSetCheck,
+ Iscoupleissue = dto.FIsCoupleIssue,
+ FDescription = dto.FDescription,
+ TypeB = dto.TypeB
+
};
var entity = Db.Queryable<Womcab>()
.Where(s => s.Erpid == womcab.Erpid).Single();
if (entity != null) womcab.Id = entity.Id;
+ //Cab003 = dto.FMaterialID
+ var mesLinkU9 = Db.Queryable<MesLinkU9>()
+ .Where(x => x.U9Id == dto.FMaterialID
+ && x.OrgId == "1002011210000095"
+ && x.TableType == "MES_ITEMS").First();
+
+ var mesLinkU9_TDL = Db.Queryable<MesLinkU9>()
+ .Where(x => x.U9Id == Convert.ToString(dto.FSubstitutedItem)
+ && x.OrgId == "1002011210000095"
+ && x.TableType == "MES_ITEMS").First();
+
+ var mesLinkU9_xm = Db.Queryable<MesLinkU9>()
+ .Where(x => x.U9Id == Convert.ToString(dto.FProject)
+ && x.OrgId == "1002011210000095"
+ && x.TableType == "MES_PROJECT").First();
+
+ if (mesLinkU9 != null) womcab.Cab003 = mesLinkU9.MesId;
+ if (mesLinkU9_TDL != null) womcab.Substituteditem = Convert.ToInt64(mesLinkU9_TDL.MesId);
+ if (mesLinkU9_xm != null) womcab.Project = mesLinkU9_xm.MesId;
+
womcabList.Add(womcab);
}
--
Gitblit v1.9.3