From b907e1224c2fa8a60f2567ea4297f28a054e29c3 Mon Sep 17 00:00:00 2001 From: leo <10200039@qq.com> Date: Sat, 22 Apr 2023 20:34:40 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9BUG?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- FactorySystemBll/TeamworkBll.cs | 1 + FactorySystemBll/ViewBll.cs | 28 ++++++++++++++++++++++++---- 2 files changed, 25 insertions(+), 4 deletions(-) diff --git a/FactorySystemBll/TeamworkBll.cs b/FactorySystemBll/TeamworkBll.cs index 61ce88e..2539cce 100644 --- a/FactorySystemBll/TeamworkBll.cs +++ b/FactorySystemBll/TeamworkBll.cs @@ -264,6 +264,7 @@ namespace FactorySystemBll left join TFS_Material on TFS_Material.FID=TFS_ViewMaterial.FMaterialID left join TFS_MaterialInfo on TFS_ViewMaterial.FMaterialID=TFS_MaterialInfo.FDataID and TFS_MaterialInfo.FType=2 left join TFS_PackageChild on TFS_PackageChild.FMaterialID =TFS_ViewMaterial.FMaterialID + left join TFS_FTeamwork on TFS_ViewMaterial.FTeamID=TFS_FTeamwork.FID {2} where {1}", selectSql, whereSql, string.IsNullOrEmpty(joinSql) ? "" : joinSql); return db.Ado.GetDataTable(strSql); } diff --git a/FactorySystemBll/ViewBll.cs b/FactorySystemBll/ViewBll.cs index 519ba4b..bcb7cf5 100644 --- a/FactorySystemBll/ViewBll.cs +++ b/FactorySystemBll/ViewBll.cs @@ -32,7 +32,7 @@ namespace FactorySystemBll * 此处的viewType来自TBasicCode中FType=33时,的FRemark字段 * **/ List> viewList = new List>(); - List viewTypes=new List { 2,3,4,5,1}; + List viewTypes=new List { 2,3,4,5 }; if (viewTypes.Contains(viewType)) { viewList = db.Queryable((a, b) => @@ -53,10 +53,30 @@ namespace FactorySystemBll .Select("distinct a.*,b.FTypeID1,b.FTypeID2,b.FK3Code,b.FK3Name,b.FK3ShortCode,b.FTestCode,b.FRelationCode,b.FRelationName,b.FSAPCode,b.FSAPDescription,b.FMaterialGroup,b.FMaterialType,b.FCustomerCode,b.FStoreHouse," + "b.FBomEntry,b.FLineHouse,b.FProductDesc,b.FWorkCenter,b.FCraftExplain,b.FIidentifier,b.FGuaranteePeriod,b.FBStorageConditions,b.FSafetyStock,b.FTriggerRatio,b.FMinAmount,b.FMaxAmount,b.FYield,b.FFixedLoss,b.FTheoryYield," + "b.FQualityTest1,b.FQualityTest2").ToDictionaryList(); + + TFS_FTeamwork teamWork = db.Queryable().Where(s => s.FID == teamId).First(); + TFS_PackageMain packAge = db.Queryable().Where(s => s.FCode == teamWork.FPackCode).First(); + + if (packAge != null) + { + viewList[0].Remove("FBaseGrossWeight"); + viewList[0].Add("FBaseGrossWeight", packAge.FGrossWeight); + viewList[0].Remove("FBaseNetWeight"); + viewList[0].Add("FBaseNetWeight", packAge.FNetWeight); + viewList[0].Remove("FBaseSpecification"); + viewList[0].Add("FBaseSpecification", packAge.FSpecs); + viewList[0].Add("HalfCode", teamWork.FMaterialHalfIDs); + } + var FBaseMaterialDesc = viewList.GroupBy(s => s["FBaseMaterialDesc"]).Select(s => s.Key).ToList(); + + if (FBaseMaterialDesc.Count > 0) + { + viewList[0].Add("HalfDesc", FBaseMaterialDesc[0]); + } } if (viewType == 1) { - List> viewList1 = db.Queryable((a, b) => + viewList = db.Queryable((a, b) => new JoinQueryInfos(JoinType.Inner, a.FMaterialID == b.FID)) .Where((a, b) => a.FTeamID == teamId) .WhereIF(currUser != null, (a, b) => a.FFactoryID == currUser.FFactoryID) @@ -64,7 +84,7 @@ namespace FactorySystemBll .Select("distinct a.*,b.FTypeID1,b.FTypeID2,b.FK3Code,b.FK3Name,b.FK3ShortCode,b.FTestCode,b.FRelationCode,b.FRelationName,b.FSAPCode,b.FSAPDescription,b.FMaterialGroup,b.FMaterialType,b.FCustomerCode,b.FStoreHouse," + "b.FBomEntry,b.FLineHouse,b.FProductDesc,b.FWorkCenter,b.FCraftExplain,b.FIidentifier,b.FGuaranteePeriod,b.FBStorageConditions,b.FSafetyStock,b.FTriggerRatio,b.FMinAmount,b.FMaxAmount,b.FYield,b.FFixedLoss,b.FTheoryYield," + "b.FQualityTest1,b.FQualityTest2").ToDictionaryList(); - List Minfo = GetMaterialInfoList(viewList1.GroupBy(s => s["FMaterialID"]).Select(s => int.Parse(s.Key.ToString())).ToList(), "", "", currUserId); + List Minfo = GetMaterialInfoList(viewList.GroupBy(s => s["FMaterialID"]).Select(s => int.Parse(s.Key.ToString())).ToList(), "", "", currUserId); if (Minfo.Count > 0) { FGuaranteePeriod = Minfo[0].FGuaranteePeriod; FStorageConditions = Minfo[0].FStorageConditions; @@ -82,7 +102,7 @@ namespace FactorySystemBll viewList[0].Add("FBaseSpecification", packAge.FSpecs); viewList[0].Add("HalfCode", teamWork.FMaterialHalfIDs); } - var FBaseMaterialDesc = viewList1.GroupBy(s => s["FBaseMaterialDesc"]).Select(s => s.Key).ToList(); + var FBaseMaterialDesc = viewList.GroupBy(s => s["FBaseMaterialDesc"]).Select(s => s.Key).ToList(); if (FBaseMaterialDesc.Count > 0) { viewList[0].Add("HalfDesc", FBaseMaterialDesc[0]);