master
leo 3 years ago
commit 7043853248

@ -94,6 +94,22 @@ namespace FactorySystemApi.Controllers
}
else
{
if (inParam.ContainsKey("SP")&&!inParam.ContainsKey("FPlmCode"))
{
inParam.Add("FPlmCode", inParam["SP"].ToString());
}
if (inParam.ContainsKey("SP_VERSION")&& !inParam.ContainsKey("FVersionCode"))
{
inParam.Add("FVersionCode", inParam["SP_VERSION"].ToString());
}
if (inParam.ContainsKey("SP_VALUE")&&!inParam.ContainsKey("FTestCode"))
{
inParam.Add("FTestCode", inParam["SP_VALUE"].ToString());
}
List<TFS_FieldInfo> fieldList = BaseBll.GetFileInfoList((int)Constant.FieldInfoType.);
TFS_Formula formula = new TFS_Formula();
List<PropertyInfo> propertys = formula.GetType().GetProperties().ToList();
@ -102,6 +118,7 @@ namespace FactorySystemApi.Controllers
PropertyInfo temp = propertys.Find(s => s.Name == field.FColumnFIeld);
if (temp != null) temp.SetValue(formula, GetValueByName(inParam, field.FFieldName, field.FDefault));
}
if (string.IsNullOrEmpty(formula.FPlmCode))
{
apiResult.Error("FPlmCode不能为空");

@ -188,148 +188,140 @@ namespace FactorySystemApi.Controllers
{
//对接获取
//inParam.Add("FMdmCode", GetMdmCode(inParam));
var ts = DateTime.UtcNow - new DateTime(1970, 1, 1, 0, 0, 0, 0);
inParam.Add("FMdmCode", ts.TotalSeconds.ToString("F0"));
if (!inParam.ContainsKey("FMdmCode") || string.IsNullOrEmpty(inParam["FMdmCode"].ToString().Trim()))
//var ts = DateTime.UtcNow - new DateTime(1970, 1, 1, 0, 0, 0, 0);
//inParam.Add("FMdmCode", ts.TotalSeconds.ToString("F0"));
try
{
apiResult.Error("获取MDM失败");
}
else
{
try
inParam.TryGetValue("FState", out object state);
if (null == state)
{
inParam.TryGetValue("FState", out object state);
if (null == state)
{
inParam["FState"] = state = 1;
}
inParam.Remove("FID");
ApiAuthInfo user = Request.Properties["token"] as ApiAuthInfo;
if (inParam.ContainsKey("FAddUser"))
{
inParam["FAddUser"] = user.FID;
}
else
{
inParam.Add("FAddUser", user.FID);
}
if (inParam.ContainsKey("FEditUser"))
{
inParam["FEditUser"] = user.FID;
}
else
{
inParam.Add("FEditUser", user.FID);
}
if (inParam.ContainsKey("FEditDate"))
{
inParam["FEditDate"] = DateTime.Now;
}
else
{
inParam.Add("FEditDate", DateTime.Now);
}
inParam["FState"] = state = 1;
}
inParam.Remove("FID");
ApiAuthInfo user = Request.Properties["token"] as ApiAuthInfo;
if (inParam.ContainsKey("FAddUser"))
{
inParam["FAddUser"] = user.FID;
}
else
{
inParam.Add("FAddUser", user.FID);
}
if (inParam.ContainsKey("FEditUser"))
{
inParam["FEditUser"] = user.FID;
}
else
{
inParam.Add("FEditUser", user.FID);
}
if (inParam.ContainsKey("FEditDate"))
{
inParam["FEditDate"] = DateTime.Now;
}
else
{
inParam.Add("FEditDate", DateTime.Now);
}
//TUser tUser = BaseBll.GetTempModel<TUser>(user.FID);
TFS_Factory factory = BaseBll.GetTempModel<TFS_Factory>(int.Parse(inParam["FCreateFactoryID"].ToString()));
if (inParam.ContainsKey("FCreateFactoryID"))
{
inParam.Remove("FCreateFactoryID");
}
inParam.Add("FCreateFactoryID", factory.FID);
inParam.Add("FCreateFactoryCode", factory.FCode);
inParam.Add("FCreateFactoryType", factory.FType);
if (factory.FType != (int)Constant.FactoryType.)
{
factory = BaseBll.GetTempModel<TFS_Factory>(factory.FFactoryID);
inParam.Add("FProdFactoryID", factory.FID);
inParam.Add("FProdFactoryCode", factory.FCode);
}
else
{
inParam.Add("FProdFactoryID", factory.FID);
inParam.Add("FProdFactoryCode", factory.FCode);
}
if (!inParam.ContainsKey("FSaleCode"))
{
inParam.Add("FSaleCode", "");
}
//TUser tUser = BaseBll.GetTempModel<TUser>(user.FID);
TFS_Factory factory = BaseBll.GetTempModel<TFS_Factory>(int.Parse(inParam["FCreateFactoryID"].ToString()));
if (inParam.ContainsKey("FCreateFactoryID"))
{
inParam.Remove("FCreateFactoryID");
}
inParam.Add("FCreateFactoryID", factory.FID);
inParam.Add("FCreateFactoryCode", factory.FCode);
inParam.Add("FCreateFactoryType", factory.FType);
if (factory.FType != (int)Constant.FactoryType.)
{
factory = BaseBll.GetTempModel<TFS_Factory>(factory.FFactoryID);
inParam.Add("FProdFactoryID", factory.FID);
inParam.Add("FProdFactoryCode", factory.FCode);
}
else
{
inParam.Add("FProdFactoryID", factory.FID);
inParam.Add("FProdFactoryCode", factory.FCode);
}
if (!inParam.ContainsKey("FSaleCode"))
{
inParam.Add("FSaleCode", "");
}
//创建 TFS_FTeamwork
int teamId = BaseBll.InsertDataModel(inParam, "TFS_HalfMaterialFTeamwork");
//创建 TFS_FTeamwork
int teamId = BaseBll.InsertDataModel(inParam, "TFS_HalfMaterialFTeamwork");
List<TFS_Material> editMaterialList = MaterialTeamworkBll.UpdateFormula(inParam["FTestCode"].ToString(), inParam["FNewTestCode"].ToString(), teamId, factory.FID);
ids = editMaterialList.Select(m => m.FID).Distinct().ToList();
List<TFS_Material> editMaterialList = MaterialTeamworkBll.UpdateFormula(inParam["FTestCode"].ToString(), inParam["FNewTestCode"].ToString(), teamId, factory.FID);
ids = editMaterialList.Select(m => m.FID).Distinct().ToList();
apiResult.Data = teamId;
if (teamId > 0)
apiResult.Data = teamId;
if (teamId > 0)
{
inParam.Add("FID", teamId);
//创建流程
int resultProcessCreate = MaterialTeamworkBll.CreateProcessData(teamId, user.FID);
if (resultProcessCreate > 0)
{
inParam.Add("FID", teamId);
//创建流程
int resultProcessCreate = MaterialTeamworkBll.CreateProcessData(teamId, user.FID);
if (resultProcessCreate > 0)
//直接走下一步
if (state.ToString().Contains("1"))
{
//直接走下一步
if (state.ToString().Contains("1"))
TFS_HalfMaterialFTeamwork teamwork = BaseBll.GetTempModel<TFS_HalfMaterialFTeamwork>(teamId);
//if (editMaterialList.Count() == 0)
//{
// MaterialTeamworkBll.CreateProductView(teamwork, null, user.FID);
//}
//if (editMaterialList.Count() == 0)
//{
// //MaterialTeamworkBll.CreateProductView(teamwork, null, user.FID);
// TFS_Material material = editMaterialList.Find(s => s.FType == "20");//默认取第一个20的没找到取第一个
// if (material == null) material = editMaterialList.FirstOrDefault();
// db.Updateable<TFS_HalfMaterialFTeamwork>(new { FMaterialHalfIDs = material.FID }).Where(s => s.FID == teamwork.FID).ExecuteCommand();
//}
//else
//{
// //MaterialTeamworkBll.CreateProductView(teamwork, editMaterialList, user.FID);
//}
//开始BOM下载
int dow = DockGetBomData(teamwork.FID, user.FID);
if (dow > 0 || editMaterialList.Count() > 0)
{
TFS_HalfMaterialFTeamwork teamwork = BaseBll.GetTempModel<TFS_HalfMaterialFTeamwork>(teamId);
//if (editMaterialList.Count() == 0)
//{
// MaterialTeamworkBll.CreateProductView(teamwork, null, user.FID);
//}
//if (editMaterialList.Count() == 0)
//{
// //MaterialTeamworkBll.CreateProductView(teamwork, null, user.FID);
// TFS_Material material = editMaterialList.Find(s => s.FType == "20");//默认取第一个20的没找到取第一个
// if (material == null) material = editMaterialList.FirstOrDefault();
// db.Updateable<TFS_HalfMaterialFTeamwork>(new { FMaterialHalfIDs = material.FID }).Where(s => s.FID == teamwork.FID).ExecuteCommand();
//}
//else
//{
// //MaterialTeamworkBll.CreateProductView(teamwork, editMaterialList, user.FID);
//}
//开始BOM下载
int dow= DockGetBomData(teamwork.FID, user.FID);
if (dow > 0 || editMaterialList.Count()>0)
{
MaterialTeamworkBll.HasMaterialTestCode(teamwork);
BaseBll.CreateTaskData2(teamwork.FID, user.FID, "1"); //新增物料分类事项
BaseBll.UpdateTeamProcess2(teamId, (int)Constant.HalfMaterialProcessType., 2, 1); // 更新物料分类流程
}
else
{
BaseBll.DeleteDataById(teamId, "TFS_HalfMaterialFTeamwork", true);
apiResult.Error("未能找到物料");
//BaseBll.CreateTaskData2(teamId, user.FID, ((int)Constant.HalfMaterialTask.BOM下载).ToString());
//BaseBll.UpdateTeamProcess2(teamId, (int)Constant.HalfMaterialTask.物料分类, 1, 1);
}
MaterialTeamworkBll.HasMaterialTestCode(teamwork);
BaseBll.CreateTaskData2(teamwork.FID, user.FID, "1"); //新增物料分类事项
BaseBll.UpdateTeamProcess2(teamId, (int)Constant.HalfMaterialProcessType., 2, 1); // 更新物料分类流程
}
else
{
BaseBll.CreateTaskData2(teamId, user.FID, ((int)Constant.HalfMaterialTask.BOM).ToString());
BaseBll.UpdateTeamProcess2(teamId, (int)Constant.HalfMaterialTask.BOM, 1, 1);
BaseBll.DeleteDataById(teamId, "TFS_HalfMaterialFTeamwork", true);
apiResult.Error("未能找到物料");
//BaseBll.CreateTaskData2(teamId, user.FID, ((int)Constant.HalfMaterialTask.BOM下载).ToString());
//BaseBll.UpdateTeamProcess2(teamId, (int)Constant.HalfMaterialTask.物料分类, 1, 1);
}
}
else
{
BaseBll.DeleteDataById(teamId, "TFS_HalfMaterialFTeamwork", true);
apiResult.Error("流程创建失败,请稍后重试");
BaseBll.CreateTaskData2(teamId, user.FID, ((int)Constant.HalfMaterialTask.BOM).ToString());
BaseBll.UpdateTeamProcess2(teamId, (int)Constant.HalfMaterialTask.BOM, 1, 1);
}
HalfMaterialTeamworkBll.ChangeTeamProcess(teamId);
}
else
{
BaseBll.DeleteDataById(teamId, "TFS_HalfMaterialFTeamwork", true);
apiResult.Error("流程创建失败,请稍后重试");
}
HalfMaterialTeamworkBll.ChangeTeamProcess(teamId);
}
catch (Exception ex)
{
//失败则把修改的更新回去
MaterialTeamworkBll.UpdateFormula(inParam["FTestCode"].ToString(), inParam["FNewTestCode"].ToString(),0,0,string.Join(",",ids));
throw;
}
}
catch (Exception ex)
{
//失败则把修改的更新回去
MaterialTeamworkBll.UpdateFormula(inParam["FTestCode"].ToString(), inParam["FNewTestCode"].ToString(), 0, 0, string.Join(",", ids));
throw;
}
}, apiResult, Request, inParam);
}
@ -613,6 +605,10 @@ namespace FactorySystemApi.Controllers
OAService oAService = new OAService();
specifList[0].Code = formula.FTestCode;
specifList[0].Version = formula.FVersionCode;
specifList[0].SP = formula.FPlmCode;
specifList[0].SP_Version = formula.FVersionCode;
RestResult restResult = oAService.GetSpecificationsList(specifList.ToArray());
string bomStr = restResult.data == null ? "[]" : restResult.data.ToString();
ExceptionHelper.AddSystemJournal(Request, specifList[0], restResult,user.FID, "DockGetBomData");
@ -683,6 +679,11 @@ namespace FactorySystemApi.Controllers
OAService oAService = new OAService();
specifList[0].Code = teamwork.FNewTestCode;
specifList[0].Version = formula.FVersionCode;
specifList[0].SP = formula.FPlmCode;
specifList[0].SP_Version = formula.FVersionCode;
RestResult restResult = oAService.GetSpecificationsList(specifList.ToArray());
string bomStr = restResult.data == null ? "[]" : restResult.data.ToString();
ExceptionHelper.AddSystemJournal(Request, specifList[0], restResult, userId, "DockGetBomData");
@ -1152,7 +1153,7 @@ namespace FactorySystemApi.Controllers
}
else
{
dataList = MaterialTeamworkBll.GetTeamworkViewData(selectSql.Trim(','), whereSql, joinSql);
dataList = MaterialTeamworkBll.GetHalfMaterialTeamworkViewData(selectSql.Trim(','), whereSql, joinSql);
dataList.Columns.Remove("FMaterialID");
if (intType == (int)Constant.TeamViewType.)
{

@ -448,6 +448,11 @@ namespace FactorySystemApi.Controllers
OAService oAService = new OAService();
specifList[0].Code = formula.FTestCode;
specifList[0].Version = formula.FVersionCode;
//修改
specifList[0].SP = formula.FPlmCode;
specifList[0].SP_Version = formula.FVersionCode;
RestResult restResult = oAService.GetSpecificationsList(specifList.ToArray());
string bomStr = restResult.data == null ? "[]" : restResult.data.ToString();
ExceptionHelper.AddSystemJournal(Request, specifList[0], restResult,user.FID, "DockGetBomData");
@ -516,8 +521,14 @@ namespace FactorySystemApi.Controllers
{
TFS_Formula formula = BaseBll.GetTempModel<TFS_Formula>(teamwork.FFormulaID);
OAService oAService = new OAService();
specifList[0].Code = formula.FTestCode;
specifList[0].Version = formula.FVersionCode;
//修改
specifList[0].SP= formula.FPlmCode;
specifList[0].SP_Version= formula.FVersionCode;
RestResult restResult = oAService.GetSpecificationsList(specifList.ToArray());
string bomStr = restResult.data == null ? "[]" : restResult.data.ToString();
ExceptionHelper.AddSystemJournal(Request, specifList[0], restResult, userId, "DockGetBomData");
@ -622,6 +633,19 @@ namespace FactorySystemApi.Controllers
{
foreach (BomModel item in dataList)
{
if (!string.IsNullOrWhiteSpace(item.SP))
{
item.Code = item.SP;
}
if (!string.IsNullOrWhiteSpace(item.SP_Version))
{
item.Version=item.SP_Version;
}
if (!string.IsNullOrWhiteSpace(item.SP_VALUE))
{
item.TestNO = item.SP_VALUE;
}
int dataId = random.Next(1, 99) * random.Next(1, 99);
dataId += random.Next(10, 99) * random.Next(10, 99) * 2;
dataId += random.Next(1, 99) * random.Next(1, 99) * 10;

@ -259,42 +259,6 @@
</Compile>
</ItemGroup>
<ItemGroup>
<None Include="Connected Services\Sap_Bom\configuration91.svcinfo" />
<None Include="Connected Services\Sap_Bom\configuration.svcinfo" />
<Content Include="Connected Services\Sap_Bom\FactorySystemApi.Sap_Bom.dt_pp079_resHEAD.datasource">
<DependentUpon>Reference.svcmap</DependentUpon>
</Content>
<Content Include="Connected Services\Sap_Bom\FactorySystemApi.Sap_Bom.si_pp079_mcs_senderResponse.datasource">
<DependentUpon>Reference.svcmap</DependentUpon>
</Content>
<None Include="Connected Services\Sap_Bom\Reference.svcmap">
<Generator>WCF Proxy Generator</Generator>
<LastGenOutput>Reference.cs</LastGenOutput>
</None>
<None Include="Connected Services\Sap_ProductVersion\configuration91.svcinfo" />
<None Include="Connected Services\Sap_ProductVersion\configuration.svcinfo" />
<Content Include="Connected Services\Sap_ProductVersion\FactorySystemApi.Sap_ProductVersion.dt_pp080_resHEAD.datasource">
<DependentUpon>Reference.svcmap</DependentUpon>
</Content>
<Content Include="Connected Services\Sap_ProductVersion\FactorySystemApi.Sap_ProductVersion.si_pp080_mcs_senderResponse.datasource">
<DependentUpon>Reference.svcmap</DependentUpon>
</Content>
<None Include="Connected Services\Sap_ProductVersion\Reference.svcmap">
<Generator>WCF Proxy Generator</Generator>
<LastGenOutput>Reference.cs</LastGenOutput>
</None>
<None Include="Connected Services\Sap_ViewMaterial\configuration91.svcinfo" />
<None Include="Connected Services\Sap_ViewMaterial\configuration.svcinfo" />
<Content Include="Connected Services\Sap_ViewMaterial\FactorySystemApi.Sap_ViewMaterial.dt_mm104_res.datasource">
<DependentUpon>Reference.svcmap</DependentUpon>
</Content>
<Content Include="Connected Services\Sap_ViewMaterial\FactorySystemApi.Sap_ViewMaterial.si_mm104_mcs_senderResponse.datasource">
<DependentUpon>Reference.svcmap</DependentUpon>
</Content>
<None Include="Connected Services\Sap_ViewMaterial\Reference.svcmap">
<Generator>WCF Proxy Generator</Generator>
<LastGenOutput>Reference.cs</LastGenOutput>
</None>
<Content Include="favicon.ico" />
<Content Include="Global.asax" />
<Content Include="Scripts\bootstrap.js" />
@ -304,9 +268,6 @@
<Content Include="File\Material\副产物导入模板.xlsx" />
<Content Include="File\Material\替代料导入模板.xlsx" />
<Content Include="File\Material\物料信息补全导入模板.xlsx" />
<None Include="Connected Services\Sap_Bom\si_pp079_mcs_sender.wsdl" />
<None Include="Connected Services\Sap_ProductVersion\si_pp080_mcs_sender.wsdl" />
<None Include="Connected Services\Sap_ViewMaterial\si_mm104_mcs_sender.wsdl" />
<None Include="Properties\Settings.settings">
<Generator>SettingsSingleFileGenerator</Generator>
<LastGenOutput>Settings.Designer.cs</LastGenOutput>
@ -451,11 +412,6 @@
<ItemGroup>
<WCFMetadata Include="Connected Services\" />
</ItemGroup>
<ItemGroup>
<WCFMetadataStorage Include="Connected Services\Sap_Bom\" />
<WCFMetadataStorage Include="Connected Services\Sap_ProductVersion\" />
<WCFMetadataStorage Include="Connected Services\Sap_ViewMaterial\" />
</ItemGroup>
<PropertyGroup>
<VisualStudioVersion Condition="'$(VisualStudioVersion)' == ''">10.0</VisualStudioVersion>
<VSToolsPath Condition="'$(VSToolsPath)' == ''">$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)</VSToolsPath>

@ -635,7 +635,29 @@ namespace FactorySystemApi.Plm_Formula {
private string codeField;
private string versionField;
public string SP { get
{
return this.codeField;
}
set
{
this.codeField = value;
}
}
public string SP_Version
{
get
{
return this.versionField;
}
set
{
this.versionField = value;
}
}
/// <remarks/>
public string Code {
get {

@ -323,6 +323,18 @@ namespace FactorySystemBll
{2} where {1}", selectSql, whereSql, string.IsNullOrEmpty(joinSql) ? "" : joinSql);
return db.Ado.GetDataTable(strSql);
}
/// <summary>
/// 获取协同视图结果信息
/// </summary>
public DataTable GetHalfMaterialTeamworkViewData(string selectSql, string whereSql, string joinSql = "")
{
SqlSugarClient db = AppSettingsHelper.GetSqlSugar();
string strSql = string.Format(@"select distinct {0},TFS_ViewMaterial.FMaterialID from TFS_HalfMaterialFTeamwork left join TFS_ViewMaterial on
TFS_HalfMaterialFTeamwork.FID=TFS_ViewMaterial.FHalfMaterialTeamID left join TFS_Material on TFS_Material.FID=TFS_ViewMaterial.FMaterialID
{2} where {1}", selectSql, whereSql, string.IsNullOrEmpty(joinSql) ? "" : joinSql);
return db.Ado.GetDataTable(strSql);
}
/// <summary>
/// 获取协同视图结果信息

@ -9,13 +9,33 @@ namespace FactorySystemModel.BusinessModel
Code = Name = Version = Type = Quantity = TestNO = "";
Specifications = new List<BomModel>();
}
public string Code { get; set; }
/// <summary>
/// PLM规格内码
/// </summary>
public string SP { get; set; }
public string Name { get; set; }
public string Version { get; set; }
/// <summary>
/// 规格英文名称
/// </summary>
public string EnName { get; set; }
/// <summary>
/// 版本号
/// </summary>
public string SP_Version { get; set; }
public string Type { get; set; }
/// <summary>
/// 实验号
/// </summary>
public string SP_VALUE { get; set; }
public string Code { get; set; }
public string Version { get; set; }
public string Quantity { get; set; }
public string TestNO { get; set; }
public List<BomModel> Specifications { get; set; }
}
/// <summary>

Loading…
Cancel
Save