diff --git a/FactorySystemApi/Controllers/MaterialTeamworkController.cs b/FactorySystemApi/Controllers/MaterialTeamworkController.cs
index 8f9860b..07116a3 100644
--- a/FactorySystemApi/Controllers/MaterialTeamworkController.cs
+++ b/FactorySystemApi/Controllers/MaterialTeamworkController.cs
@@ -10,6 +10,9 @@ using System.Collections.Generic;
using System.Web.Http;
using FactorySystemModel.RequestModel;
using System.Reflection;
+using System.Data;
+using System.IO;
+using System.Security.Cryptography;
namespace FactorySystemApi.Controllers
{
@@ -579,5 +582,117 @@ namespace FactorySystemApi.Controllers
}
return result as T;
}
+
+ ///
+ /// 下载SAP视图
+ ///
+ [HttpPost]
+ public ApiResult DownMateialViewSAP(Dictionary inParam)
+ {
+ ApiResult apiResult = new ApiResult();
+
+ return ExceptionHelper.TryReturnException(() =>
+ {
+ if (inParam.ContainsKey("teamId") && inParam.ContainsKey("teamWorkType"))
+ {
+ inParam.TryGetValue("teamId", out object teamworkId);
+ inParam.TryGetValue("teamWorkType", out object teamworkType);
+ inParam.TryGetValue("materialName", out object materialName);
+
+ string basePath = AppDomain.CurrentDomain.BaseDirectory.Trim('\\');
+ string savePath = basePath + string.Format("\\File\\Temp\\{0}_{1}\\", inParam["teamId"], "ViewSAP");
+ if (!Directory.Exists(savePath)) Directory.CreateDirectory(savePath);
+ string tempPath = savePath.Replace("\\File\\Temp\\", "\\File\\View\\");
+ if (!Directory.Exists(tempPath)) Directory.CreateDirectory(tempPath);
+ savePath += ".xlsx";
+
+ bool hasFinish = inParam.ContainsKey("FFinish");
+ if (hasFinish) savePath = savePath.Replace("\\File\\Temp\\", "\\File\\View\\");
+ if (!File.Exists(savePath) || !hasFinish)
+ {
+ CreateExeclFileSAP(materialName.ToString(), savePath, teamworkId.ToString(), teamworkType.ToString());
+ }
+
+ string url = Request.RequestUri.AbsoluteUri.Replace(Request.RequestUri.AbsolutePath, "") + savePath.Replace(basePath, "").Replace("\\", "/").Replace(".xlsx", materialName.ToString() + ".xlsx");
+ apiResult.Data = url;
+ }
+ else
+ {
+ apiResult.Error("视图信息获取失败");
+ }
+
+ }, apiResult, Request);
+ }
+
+ ///
+ /// 下载视图
+ ///
+ [HttpPost]
+ public ApiResult DownMateialView(Dictionary inParam)
+ {
+ ApiResult apiResult = new ApiResult();
+
+ return ExceptionHelper.TryReturnException(() =>
+ {
+ if (inParam.ContainsKey("teamId") && inParam.ContainsKey("teamWorkType") && inParam.ContainsKey("materialName"))
+ {
+
+ inParam.TryGetValue("teamId", out object teamworkId);
+ inParam.TryGetValue("teamWorkType", out object teamworkType);
+ inParam.TryGetValue("materialName", out object materialName);
+
+ string basePath = AppDomain.CurrentDomain.BaseDirectory.Trim('\\');
+ string savePath = basePath + string.Format("\\File\\Temp\\{0}_{1}\\", inParam["teamId"], "View");
+ if (!Directory.Exists(savePath)) Directory.CreateDirectory(savePath);
+ string tempPath = savePath.Replace("\\File\\Temp\\", "\\File\\View\\");
+ if (!Directory.Exists(tempPath)) Directory.CreateDirectory(tempPath);
+ savePath += ".xlsx";
+
+ bool hasFinish = inParam.ContainsKey("FFinish");
+ if (hasFinish) savePath = savePath.Replace("\\File\\Temp\\", "\\File\\View\\");
+ if (!File.Exists(savePath) || !hasFinish)
+ {
+ CreateExeclFile(materialName.ToString(), savePath, teamworkId.ToString(), teamworkType.ToString());
+ }
+
+ string url = Request.RequestUri.AbsoluteUri.Replace(Request.RequestUri.AbsolutePath, "") + savePath.Replace(basePath, "").Replace("\\", "/").Replace(".xlsx", materialName.ToString() + ".xlsx");
+ apiResult.Data = url;
+ }
+ else
+ {
+ apiResult.Error("视图信息获取失败");
+ }
+
+ }, apiResult, Request);
+ }
+
+ private void CreateExeclFileSAP(string fType, string savePath, string teamworkId, string teamworkType)
+ {
+ DataTable dataList = new DataTable();
+
+ dataList = MaterialTeamworkBll.GetViewMaterialSAP(teamworkId, teamworkType);
+ NPOIHelper.ExportDTtoExcel(dataList, "Sheet1", savePath.Replace(".xlsx", fType + ".xlsx"));
+ }
+
+ private void CreateExeclFile(string fType, string savePath, string teamworkId, string teamworkType)
+ {
+ DataTable dataList = null;
+ List viewList = null;
+
+ int teamId;
+ int teamType;
+
+ int.TryParse(teamworkId, out teamId);
+ int.TryParse(teamworkType, out teamType);
+
+ viewList = MaterialTeamworkBll.GetViewMaterialByTeamId(teamId, teamType);
+ if (viewList != null && viewList.Count > 0)
+ {
+ int materialId = viewList[0].FMaterialID;
+ dataList = MaterialTeamworkBll.GetViewMaterial(materialId.ToString());
+ NPOIHelper.ExportDTtoExcel(dataList, "Sheet1", savePath.Replace(".xlsx", fType + ".xlsx"));
+ }
+
+ }
}
}
diff --git a/FactorySystemBll/MaterialTeamworkBll.cs b/FactorySystemBll/MaterialTeamworkBll.cs
index a707c64..473539f 100644
--- a/FactorySystemBll/MaterialTeamworkBll.cs
+++ b/FactorySystemBll/MaterialTeamworkBll.cs
@@ -6,7 +6,9 @@ using FactorySystemModel.SqlSugarModel;
using SqlSugar;
using System;
using System.Collections.Generic;
+using System.Data;
using System.Linq;
+using System.Security.Cryptography;
using static FactorySystemModel.EnumModel.Constant;
namespace FactorySystemBll
@@ -162,8 +164,6 @@ namespace FactorySystemBll
.OrderBy("FDepth,FID").Select("FID,FName,FID FValue,FDepth,FParentID").ToList();
}
-
-
public int InsertMaterialView(TFS_ViewMaterial view)
{
SqlSugarClient db = AppSettingsHelper.GetSqlSugar();
@@ -368,5 +368,330 @@ namespace FactorySystemBll
return materialList;
}
+
+ public List GetViewMaterialByTeamId(int teamworkId, int teamworkType)
+ {
+ List viewList = null;
+ SqlSugarClient db = AppSettingsHelper.GetSqlSugar();
+
+ if (teamworkType == 1)
+ {
+ viewList = db.Queryable().Where(s => s.FTeamID == teamworkId && s.FTeamType == 1).ToList();
+ }
+ else
+ {
+ viewList = db.Queryable().Where(s => s.FMdfMaterialTeamID == teamworkId && s.FTeamType == 1).ToList();
+ }
+
+ return viewList;
+ }
+
+ public DataTable GetViewMaterialSAP(string teamworkId, string teamworkType)
+ {
+ SqlSugarClient db = AppSettingsHelper.GetSqlSugar();
+ string strSql = @"
+ SELECT
+ isnull(FMaterialId, '') AS '物料ID',
+ isnull(FOrganizeIndustryField, '') AS '组织级别.行业领域',
+ isnull(FOrganizeMaterialType, '') AS '组织级别.物料类型',
+ isnull(FOrganizeFactory, '') AS '组织级别.工厂',
+ isnull(FOrganizeInventoryLocation, '') AS '组织级别.库存地点',
+ isnull(FOrganizeSalesOrganize, '') AS '组织级别.销售组织',
+ isnull(FOrganizeDistributionChannel, '') AS '组织级别.分销渠道',
+ isnull(FBaseMaterialCode, '') AS '基本视图.物料编号',
+ isnull(FBaseTestCode, '') AS '基本视图.试验号',
+ isnull(FBaseBasicMeter, '') AS '基本视图.基本计量',
+ isnull(FBaseMaterialDesc, '') AS '基本视图.物料描述',
+ isnull(FBaseMaterialGroup, '') AS '基本视图.物料组',
+ isnull(FBaseSpecification, '') AS '基本视图.大小/量纲(规格)',
+ isnull(FBaseMaterialText, '') AS '基本视图.物料长文本',
+ isnull(FBaseIdentifier, '') AS '基本视图.标识符:固体/液体',
+ isnull(FBaseVolumeUnit, '') AS '基本视图.体积单位',
+ isnull(FBaseGrossWeight, '') AS '基本视图.毛重',
+ isnull(FBaseNetWeight, '') AS '基本视图.净重',
+ isnull(FBaseWeightUnit, '') AS '基本视图.重量单位',
+ isnull(FBaseBusinessVolume, '') AS '基本视图.业务量',
+ isnull(FBaseFameCode, '') AS '基本视图.fame号',
+ isnull(FPurchaseGroup, '') AS '采购视图.采购组',
+ isnull(FPurchaseCompany, '') AS '采购视图.采购单位',
+ isnull(FPurchaseCompanyCount, '') AS '采购视图.采购单位数量',
+ isnull(FPurchaseBaseCompanyCount, '') AS '采购视图.基本单位数量',
+ isnull(FPurchaseValueCode, '') AS '采购视图.采购价值码',
+ isnull(FPurchaseFactorySpecificStatus, '') AS '采购视图.工厂特定状态',
+ isnull(FPurchaseAutoOrder, '') AS '采购视图.自动采购订单',
+ isnull(FPurchaseGoodsSource, '') AS '采购视图.货源清单',
+ isnull(FTypeCategoryType, '') AS '分类视图.类别种类',
+ isnull(FTypeType, '') AS '分类视图.类别',
+ isnull(FSaleDeliveryFactory, '') AS '销售视图.交货工厂',
+ isnull(FSaleTaxType, '') AS '销售视图.税金分类',
+ isnull(FSaleMaterialStatisticsGroup, '') AS '销售视图.物料统计组',
+ isnull(FSaleSalesCompany, '') AS '销售视图.销售单位',
+ isnull(FSaleBaseCompanyCount, '') AS '销售视图.基本单位数量',
+ isnull(FSaleSalesCompanyCount, '') AS '销售视图.销售单位数量',
+ isnull(FSaleAccountSettingGroup, '') AS '销售视图.科目设置组',
+ isnull(FSaleGeneralProjectCategoryGroup, '') AS '销售视图.普通项目类别组',
+ isnull(FSaleProjectCategoryGroup, '') AS '销售视图.项目类别组',
+ isnull(FSaleAvailabilityCheck, '') AS '销售视图.可用性检查',
+ isnull(FSaleOutfitGroup, '') AS '销售视图.装载组',
+ isnull(FSaleOldMaterialCode, '') AS '销售视图.旧物料号',
+ isnull(FStorageConditions, '') AS '仓储视图.存储条件',
+ isnull(FStorageBatchManage, '') AS '仓储视图.批次管理',
+ isnull(FStorageMaxStoragePeriod, '') AS '仓储视图.最大存储期间',
+ isnull(FStorageTimeUnit, '') AS '仓储视图.时间单位',
+ isnull(FStorageMinSurplusShelfLife, '') AS '仓储视图.最小剩余货架寿命',
+ isnull(FStorageTotalShelfLife, '') AS '仓储视图.总货架寿命',
+ isnull(FStorageSLEDCode, '') AS '仓储视图.SLED期间标识',
+ isnull(FMRP1Type, '') AS 'MRP1.MRP类型',
+ isnull(FMRP1Controller, '') AS 'MRP1.MRP控制者',
+ isnull(FMRP1BatchSize, '') AS 'MRP1.批量大小',
+ isnull(FMRP1MinBatchSize, '') AS 'MRP1.最小批量大小',
+ isnull(FMRP1MaxBatchSize, '') AS 'MRP1.最大批量大小',
+ isnull(FMRP1Group, '') AS 'MRP1.MRP组',
+ isnull(FMRP1RoundValue, '') AS 'MRP1. 舍入值',
+ isnull(FMRP1ProductType, '') AS 'MRP1.产品分类',
+ isnull(FMRP1CustomerCode, '') AS 'MRP1.客户代码',
+ isnull(FMRP1SizeMaterial, '') AS 'MRP1.大小料',
+ isnull(FMRP1SmallMaterialStandard, '') AS 'MRP1. 小料标准(小于)',
+ isnull(FMRP2PurchaseType, '') AS 'MRP2.采购类型',
+ isnull(FMRP2PlanMarginalCode, '') AS 'MRP2.计划边际码',
+ isnull(FMRP2SpecialProcurement, '') AS 'MRP2.特殊采购类',
+ isnull(FMRP2Recoil, '') AS 'MRP2.反冲',
+ isnull(FMRP2SelfProductTime, '') AS 'MRP2.自制生产时间',
+ isnull(FMRP2PlannDeliveryTime, '') AS 'MRP2.计划交货时间',
+ isnull(FMRP2ReceiveProcessTime, '') AS 'MRP2.收货处理时间',
+ isnull(FMRP2SafeStock, '') AS 'MRP2.安全库存',
+ isnull(FMRP2DeliveryInventoryPlace, '') AS 'MRP2.发货库存地点',
+ isnull(FMRP2ExternalStoragePlace, '') AS 'MRP2.外部采购仓储地点',
+ isnull(FMRP3PolicyGroup, '') AS 'MRP3.策略组',
+ isnull(FMRP3ConsumePattern, '') AS 'MRP3.消耗模式',
+ isnull(FMRP3ForwardConsumePeriod, '') AS 'MRP3.向前消耗期间',
+ isnull(FMRP3ReverseConsumePeriod, '') AS 'MRP3.逆向消耗期',
+ isnull(FMRP3BlendMRP, '') AS 'MRP3.混合MRP',
+ isnull(FMRP3AvailabilityCheck, '') AS 'MRP3.可用性检查',
+ isnull(FMRP4AloneOrFocus, '') AS 'MRP4.单独或集中',
+ isnull(FPlanProductPlanParam, '') AS '工作计划视图.生产计划参数文件',
+ isnull(FPlanUnlimitedOverDelivery, '') AS '工作计划视图.无限制过量交货',
+ isnull(FPlanUnderDeliveryTolerance, '') AS '工作计划视图.不足交货允差',
+ isnull(FPlanOverDeliveryTolerance, '') AS '工作计划视图.过度交货允差',
+ isnull(FPlanDeliverCompany, '') AS '工作计划视图.发货单位',
+ isnull(FPlanDeliverCompanyCount, '') AS '工作计划视图.发货单位数量',
+ isnull(FPlanBaseCompanyCount, '') AS '工作计划视图.基本单位数量',
+ isnull(FQualityType1, '') AS '质检视图.检验类型1',
+ isnull(FQualityType2, '') AS '质检视图.检验类型2',
+ isnull(FQualityType3, '') AS '质检视图.检验类型3',
+ isnull(FQualityType4, '') AS '质检视图.检验类型4',
+ isnull(FQualityType5, '') AS '质检视图.检验类型5',
+ isnull(FQualityType6, '') AS '质检视图.检验类型6',
+ isnull(FAccountPriceControl, '') AS '会计视图.价格控制',
+ isnull(FAccountPriceDetermine, '') AS '会计视图.价格确定',
+ isnull(FAccountPriceUnit, '') AS '会计视图.价格单位',
+ isnull(FAccountAccessType, '') AS '会计视图.评估分类',
+ isnull(FAccountSaleOrderInventory, '') AS '会计视图.VC: 销售订单库存',
+ isnull(FAccountStandardPrice, '') AS '会计视图.标准价格',
+ isnull(FAccountProfitCenter, '') AS '会计视图.利润中心',
+ isnull(FAccountCostAccountBatch, '') AS '会计视图.成本核算批量',
+ isnull(FExtraQuantity, '') AS '额外增加字段:配方视图、组装bom视图的基本数量对应PLM配方下载BOM中用量',
+ isnull(FMRP1ReorderLocation, '') AS 'MRP1.再订货点',
+ isnull(FMRP1RegularBatchSize, '') AS 'MRP1.固定批量大小',
+ isnull(FMRP1MaxInventorySize, '') AS 'MRP1.最大库存水平',
+ isnull(FMRP1IgnoreLack, '') AS 'MRP1.不计算缺料',
+ isnull(FMRP1laminated, '') AS 'MRP1.压膜',
+ isnull(FMRP1SafeStock, '') AS 'MRP1.安全库存带小样',
+ isnull(FMRP1RequireCount, '') AS 'MRP1.需求计算不考虑前置物料库存',
+ isnull(FMRP4DiscontinuousIidentifier, '') AS 'MRP4.非连续标识',
+ isnull(FMRP4EffectivePeriod, '') AS 'MRP4.生效期',
+ isnull(FMRP4FollowMaterial, '') AS 'MRP4.后续的物料'
+ FROM TFS_ViewMaterial";
+
+ if ("2".Equals(teamworkType))
+ {
+ string whereSql = string.Format(" Where FTeamType=1 And FMdfMaterialTeamID={0}", teamworkId);
+ strSql = strSql + whereSql;
+ }
+ else
+ {
+ string whereSql = string.Format(" Where FTeamType=1 And FTeamID={0}", teamworkId);
+ strSql = strSql + whereSql;
+ }
+
+ DataTable data = db.Ado.GetDataTable(strSql);
+ return data;
+ }
+
+ public DataTable GetViewMaterial(string FID)
+ {
+ SqlSugarClient db = AppSettingsHelper.GetSqlSugar();
+ string strSql = string.Format(@"
+ SELECT
+ isnull( FTypeName1, '' ) AS '一级分类',
+ isnull( FTypeName2, '' ) AS '二级分类',
+ isnull( FK3Code, '' ) AS 'K3系统代码',
+ isnull( FK3Name, '' ) AS 'K3系统名称',
+ isnull( FK3ShortCode, '' ) AS 'K3系统短代码',
+ isnull( FTestCode, '' ) AS '产品试验号',
+ isnull( FCode, '' ) AS 'SAP系统代码',
+ isnull( FName, '' ) AS 'SAP系统描述',
+ isnull( FMaterialGroup, '' ) AS '物料组',
+ isnull( FMaterialType, '' ) AS '物料主分类',
+ isnull( FCustomerCode, '' ) AS '客供料标识',
+ isnull( FStoreHouse, '' ) AS '总仓地址',
+ isnull( FBomEntry, '' ) AS 'BOM录入情况',
+ isnull( FLineHouse, '' ) AS '线边仓地址',
+ isnull( FProductDesc, '' ) AS '产品说明',
+ isnull( FWorkCenter, '' ) AS '工作中心',
+ isnull( FCraftExplain, '' ) AS '工艺说明',
+ isnull( FIidentifier, '' ) AS '标识符',
+ isnull( FGuaranteePeriod, '' ) AS '保质期',
+ isnull( FStorageConditions, '' ) AS '存储条件',
+ isnull( FSafetyStock, '' ) AS '安全库存',
+ isnull( FTriggerRatio, '' ) AS '触发比例',
+ isnull( FMinAmount, '' ) AS '最小量',
+ isnull( FMaxAmount, '' ) AS '最大量',
+ isnull( FYield, '' ) AS '得率',
+ isnull( FFixedLoss, '' ) AS '固损',
+ isnull( FTheoryYield, '' ) AS '理论得率',
+ isnull( FQualityTest1, '' ) AS '品质检验1',
+ isnull( FQualityTest2, '' ) AS '品质检验2',
+ isnull( FName, '' ) AS '物料名称',
+ isnull( FDesc, '' ) AS '物料简介',
+ isnull( FType, '' ) AS '物料类型',
+ isnull( FCode, '' ) AS '物料编码',
+ isnull( FTestCode, '' ) AS '试验号',
+ isnull( FVersionCode, '' ) AS '配方内码',
+ isnull( FFactoryCode, '' ) AS '工厂代码',
+ isnull( FSupplyCode, '' ) AS '物料供应标识',
+ isnull( FGroupCode, '' ) AS '组编号',
+ isnull( FBaseUnit, '' ) AS '基本计量单位',
+ isnull( FMaterialGroup, '' ) AS '物料组',
+ isnull( FStoreHouse, '' ) AS '总仓地址',
+ isnull( FWorkCenter, '' ) AS '工作中心',
+ isnull( FCraftDesc, '' ) AS '工艺描述',
+ isnull( FCraftExplain, '' ) AS '工艺说明',
+ isnull( FLineHouse, '' ) AS '线边仓',
+ isnull( FFixedLoss, '' ) AS '固定损耗',
+ isnull( FOrganizeIndustryField, '' ) AS '组织级别.行业领域',
+ isnull( FOrganizeMaterialType, '' ) AS '组织级别.物料类型',
+ isnull( FOrganizeFactory, '' ) AS '组织级别.工厂',
+ isnull( FOrganizeInventoryLocation, '' ) AS '组织级别.库存地点',
+ isnull( FOrganizeSalesOrganize, '' ) AS '组织级别.销售组织',
+ isnull( FOrganizeDistributionChannel, '' ) AS '组织级别.分销渠道',
+ isnull( FBaseMaterialCode, '' ) AS '基本视图.物料编号',
+ isnull( FBaseTestCode, '' ) AS '基本视图.试验号',
+ isnull( FBaseBasicMeter, '' ) AS '基本视图.基本计量',
+ isnull( FBaseMaterialDesc, '' ) AS '基本视图.物料描述',
+ isnull( FBaseMaterialGroup, '' ) AS '基本视图.物料组',
+ isnull( FBaseSpecification, '' ) AS '基本视图.大小/量纲(规格)',
+ isnull( FBaseMaterialText, '' ) AS '基本视图.物料长文本',
+ isnull( FBaseIdentifier, '' ) AS '基本视图.标识符:固体/液体',
+ isnull( FBaseVolumeUnit, '' ) AS '基本视图.体积单位',
+ isnull( FBaseGrossWeight, '' ) AS '基本视图.毛重',
+ isnull( FBaseNetWeight, '' ) AS '基本视图.净重',
+ isnull( FBaseWeightUnit, '' ) AS '基本视图.重量单位',
+ isnull( FBaseBusinessVolume, '' ) AS '基本视图.业务量',
+ isnull( FBaseFameCode, '' ) AS '基本视图.fame号',
+ isnull( FPurchaseGroup, '' ) AS '采购视图.采购组',
+ isnull( FPurchaseCompany, '' ) AS '采购视图.采购单位',
+ isnull( FPurchaseCompanyCount, '' ) AS '采购视图.采购单位数量',
+ isnull( FPurchaseBaseCompanyCount, '' ) AS '采购视图.采购基本单位数量',
+ isnull( FPurchaseValueCode, '' ) AS '采购视图.采购价值码',
+ isnull( FPurchaseFactorySpecificStatus, '' ) AS '采购视图.工厂特定状态',
+ isnull( FPurchaseAutoOrder, '' ) AS '采购视图.自动采购单标识',
+ isnull( FPurchaseGoodsSource, '' ) AS '采购视图.货源清单',
+ isnull( FTypeCategoryType, '' ) AS '分类视图.类别种类',
+ isnull( FTypeType, '' ) AS '分类视图.类别',
+ isnull( FSaleDeliveryFactory, '' ) AS '销售视图.交货工厂',
+ isnull( FSaleTaxType, '' ) AS '销售视图.税金分类',
+ isnull( FSaleMaterialStatisticsGroup, '' ) AS '销售视图.物料统计组',
+ isnull( FSaleSalesCompany, '' ) AS '销售视图.销售单位',
+ isnull( FSaleBaseCompanyCount, '' ) AS '销售视图.基本单位数量',
+ isnull( FSaleSalesCompanyCount, '' ) AS '销售视图.销售单位数量',
+ isnull( FSaleAccountSettingGroup, '' ) AS '销售视图.科目设置组',
+ isnull( FSaleGeneralProjectCategoryGroup, '' ) AS '销售视图.普通项目类别组',
+ isnull( FSaleProjectCategoryGroup, '' ) AS '销售视图.项目类别组',
+ isnull( FSaleAvailabilityCheck, '' ) AS '销售视图.可用性检查',
+ isnull( FSaleOutfitGroup, '' ) AS '销售视图.装载组',
+ isnull( FSaleOldMaterialCode, '' ) AS '销售视图.旧物料号',
+ isnull( FStorageConditions, '' ) AS '仓储视图.存储条件',
+ isnull( FStorageBatchManage, '' ) AS '仓储视图.批次管理',
+ isnull( FStorageMaxStoragePeriod, '' ) AS '仓储视图.最大存储期间',
+ isnull( FStorageTimeUnit, '' ) AS '仓储视图.时间单位',
+ isnull( FStorageMinSurplusShelfLife, '' ) AS '仓储视图.最小剩余货架寿命',
+ isnull( FStorageTotalShelfLife, '' ) AS '仓储视图.总货架寿命',
+ isnull( FStorageSLEDCode, '' ) AS '仓储视图.SLED期间标识',
+ isnull( FMRP1Type, '' ) AS 'MRP1.MRP类型',
+ isnull( FMRP1Controller, '' ) AS 'MRP1.MRP控制者',
+ isnull( FMRP1BatchSize, '' ) AS 'MRP1.批量大小',
+ isnull( FMRP1MinBatchSize, '' ) AS 'MRP1.最小批量大小',
+ isnull( FMRP1MaxBatchSize, '' ) AS 'MRP1.最大批量大小',
+ isnull( FMRP1Group, '' ) AS 'MRP1.MRP组',
+ isnull( FMRP1RoundValue, '' ) AS 'MRP1.舍入值',
+ isnull( FMRP1ProductType, '' ) AS 'MRP1.产品分类',
+ isnull( FMRP1CustomerCode, '' ) AS 'MRP1.客户代码',
+ isnull( FMRP1SizeMaterial, '' ) AS 'MRP1.大小料',
+ isnull( FMRP1SmallMaterialStandard, '' ) AS 'MRP1.小料标准(小于)',
+ isnull( FMRP2PurchaseType, '' ) AS 'MRP2.采购类型',
+ isnull( FMRP2PlanMarginalCode, '' ) AS 'MRP2.计划边际码',
+ isnull( FMRP2SpecialProcurement, '' ) AS 'MRP2.特殊采购类',
+ isnull( FMRP2Recoil, '' ) AS 'MRP2.反冲',
+ isnull( FMRP2SelfProductTime, '' ) AS 'MRP2.自制生产时间',
+ isnull( FMRP2PlannDeliveryTime, '' ) AS 'MRP2.计划交货时间',
+ isnull( FMRP2ReceiveProcessTime, '' ) AS 'MRP2.收货处理时间',
+ isnull( FMRP2SafeStock, '' ) AS 'MRP2.安全库存',
+ isnull( FMRP2DeliveryInventoryPlace, '' ) AS 'MRP2.发货库存地点',
+ isnull( FMRP2ExternalStoragePlace, '' ) AS 'MRP2.外部采购仓储地点',
+ isnull( FMRP3PolicyGroup, '' ) AS 'MRP3.策略组',
+ isnull( FMRP3ConsumePattern, '' ) AS 'MRP3.消耗模式',
+ isnull( FMRP3ForwardConsumePeriod, '' ) AS 'MRP3.向前消耗期间',
+ isnull( FMRP3ReverseConsumePeriod, '' ) AS 'MRP3.逆向消耗期',
+ isnull( FMRP3BlendMRP, '' ) AS 'MRP3.混合MRP',
+ isnull( FMRP3AvailabilityCheck, '' ) AS 'MRP3.可用性检查',
+ isnull( FMRP4AloneOrFocus, '' ) AS 'MRP3.单独或集中',
+ isnull( FPlanProductPlanParam, '' ) AS '工作计划视图.生产计划参数文件',
+ isnull( FPlanUnlimitedOverDelivery, '' ) AS '工作计划视图.无限制过量交货',
+ isnull( FPlanUnderDeliveryTolerance, '' ) AS '工作计划视图.不足交货允差',
+ isnull( FPlanOverDeliveryTolerance, '' ) AS '工作计划视图.过度交货允差',
+ isnull( FPlanDeliverCompany, '' ) AS '工作计划视图.发货单位',
+ isnull( FPlanDeliverCompanyCount, '' ) AS '工作计划视图.发货单位数量',
+ isnull( FPlanBaseCompanyCount, '' ) AS '工作计划视图.发货基本单位数量',
+ isnull( FQualityType1, '' ) AS '质检视图.检验类型1',
+ isnull( FQualityType2, '' ) AS '质检视图.检验类型2',
+ isnull( FQualityType3, '' ) AS '质检视图.检验类型3',
+ isnull( FQualityType4, '' ) AS '质检视图.检验类型4',
+ isnull( FQualityType5, '' ) AS '质检视图.检验类型5',
+ isnull( FQualityType6, '' ) AS '质检视图.检验类型6',
+ isnull( FAccountPriceControl, '' ) AS '会计视图.价格控制',
+ isnull( FAccountPriceDetermine, '' ) AS '会计视图.价格确定',
+ isnull( FAccountPriceUnit, '' ) AS '会计视图.价格单位',
+ isnull( FAccountAccessType, '' ) AS '会计视图.评估分类',
+ isnull( FAccountSaleOrderInventory, '' ) AS '会计视图.VC: 销售订单库存',
+ isnull( FAccountStandardPrice, '' ) AS '会计视图.标准价格',
+ isnull( FAccountProfitCenter, '' ) AS '会计视图.利润中心',
+ isnull( FAccountCostAccountBatch, '' ) AS '会计视图.成本核算批量'
+ FROM(
+ SELECT
+ isnull( b.FName, '' ) AS 'FTypeName1',
+ isnull( c.FName, '' ) AS 'FTypeName2',
+ isnull( FSAPCode, '' ) AS 'FCode',
+ isnull( FSAPDescription, '' ) AS 'FName',
+ isnull( FBaseMaterialDesc, '' ) AS 'FDesc',
+ isnull( FBaseMaterialDesc, '' ) AS 'FVersionCode',
+ isnull( FBaseMaterialDesc, '' ) AS 'FFactoryCode',
+ isnull( FBaseMaterialDesc, '' ) AS 'FSupplyCode',
+ isnull( FBaseMaterialGroup, '' ) AS 'FGroupCode',
+ isnull( FBaseWeightUnit, '' ) AS 'FBaseUnit',
+ isnull( FCraftExplain, '' ) AS 'FCraftDesc',
+ d.FName AS 'FtypeName',
+ a.*
+ FROM
+ TFS_MaterialInfo AS a
+ LEFT JOIN TFS_MaterialType AS d ON a.FType=d.FID
+ LEFT JOIN TFS_MaterialType AS b ON a.FTypeID1= b.FID
+ LEFT JOIN TFS_MaterialType AS C ON a.FTypeID2= b.FID
+ WHERE
+ FDataId = {0})a;", FID);
+
+ DataTable data = db.Ado.GetDataTable(strSql);
+ return data;
+ }
}
}
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