Files
shgx_tz_mes_backend_sync/ZR.Service/mes/qc/QCStatisticsService.cs
2024-09-18 17:39:21 +08:00

820 lines
34 KiB
C#
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

using System;
using System.Linq;
using Infrastructure.Attribute;
using SqlSugar;
using ZR.Model.MES.qc;
using ZR.Model.MES.qc.DTO;
using ZR.Model.MES.wms;
using ZR.Service.mes.qc.IService;
namespace ZR.Service.mes.qc
{
/// <summary>
/// 查询报表
/// </summary>
[AppService(ServiceType = typeof(IQCStatisticsService), ServiceLifetime = LifeTime.Transient)]
public class QCStatisticsService : BaseService<QcQualityStatisticsFirst>, IQCStatisticsService
{
/// <summary>
/// 获取质量统计表 首检
/// </summary>
/// <param name="starttime"></param>
/// <param name="endTime"></param>
/// <param name="workorderid">工单号</param>
/// <param name="partnumber"></param>
/// <param name="product_description"></param>
/// <param name="team"></param>
/// <param name="pageNum"></param>
/// <param name="pageSize"></param>
/// <returns></returns>
/// <exception cref="NotImplementedException"></exception>
public (List<QcQualityStatisticsFirst>, int) GetQualityStatisticsTable_first(
DateTime starttime,
DateTime endTime,
string workorderid,
string partnumber,
string product_description,
string team,
int pageNum,
int pageSize,
int sortType = 0
)
{
starttime = starttime.ToLocalTime();
endTime = endTime.ToLocalTime();
int totalNum = 0;
var predicate = Expressionable
.Create<QcQualityStatisticsFirst>()
//XXX:修改查询日期查询的字段
.AndIF(
starttime > new DateTime(2023, 1, 1, 0, 0, 0),
it => it.StartTime >= starttime.ToLocalTime()
)
.AndIF(
endTime > new DateTime(2023, 1, 1, 0, 0, 0),
it => it.StartTime <= endTime.ToLocalTime()
)
.AndIF(
!string.IsNullOrEmpty(workorderid),
it => it.WorkorderId.Contains(workorderid)
)
.AndIF(
!string.IsNullOrEmpty(partnumber),
it => it.FinishedPartNumber.Contains(partnumber)
)
.AndIF(!string.IsNullOrEmpty(team), it => it.Team.Equals(team))
.AndIF(
!string.IsNullOrEmpty(product_description),
it => it.ProductDescription.Contains(product_description)
)
.ToExpression();
List<QcQualityStatisticsFirst> data = Context
.Queryable<QcQualityStatisticsFirst>()
.Where(predicate)
.OrderByIF(sortType == 1, it => it.QualifiedRate, OrderByType.Desc)
.OrderByIF(sortType == 2, it => it.ProductDescription, OrderByType.Asc)
.OrderByIF(sortType == 0 || sortType == 2, it => it.StartTime, OrderByType.Asc)
.OrderByIF(sortType == 3, it => it.FinishedPartNumber, OrderByType.Asc)
.OrderBy(it => it.WorkorderId)
.OrderBy(it => it.Remark2)
.ToPageList(pageNum, pageSize, ref totalNum);
foreach (QcQualityStatisticsFirst item in data)
{
WmMaterial material = Context
.Queryable<WmMaterial>()
.Where(it => it.Partnumber == item.FinishedPartNumber)
.First();
if (material == null)
{
item.ProductDescription = "此零件号不在物料清单内!";
continue;
}
item.ProductDescription = !string.IsNullOrEmpty(material.Description)
? material.Description
: material.ProductName;
}
return (data, totalNum);
}
/// <summary>
/// 获取质量统计表 二检
/// </summary>
/// <param name="starttime"></param>
/// <param name="endTime"></param>
/// <param name="workorderid"></param>
/// <param name="partnumber"></param>
/// <param name="product_description"></param>
/// <param name="team"></param>
/// <param name="pageNum"></param>
/// <param name="pageSize"></param>
/// <returns></returns>
/// <exception cref="NotImplementedException"></exception>
public (List<QcQualityStatisticsAgain>, int) GetQualityStatisticsTable_again(
DateTime starttime,
DateTime endTime,
string workorderid,
string partnumber,
string product_description,
string team,
int pageNum,
int pageSize,
int sortType = 0
)
{
starttime = starttime.ToLocalTime();
endTime = endTime.ToLocalTime();
int totalNum = 0;
var predicate = Expressionable
.Create<QcQualityStatisticsAgain>()
//XXX:修改查询日期查询的字段
.AndIF(
starttime > new DateTime(2023, 1, 1, 0, 0, 0),
it => it.StartTime >= starttime.ToLocalTime()
)
.AndIF(
endTime > new DateTime(2023, 1, 1, 0, 0, 0),
it => it.StartTime <= endTime.ToLocalTime()
)
.AndIF(
!string.IsNullOrEmpty(workorderid),
it => it.WorkorderId.Contains(workorderid)
)
.AndIF(
!string.IsNullOrEmpty(partnumber),
it => it.FinishedPartNumber.Contains(partnumber)
)
.AndIF(!string.IsNullOrEmpty(team), it => it.Team.Equals(team))
.AndIF(
!string.IsNullOrEmpty(product_description),
it => it.ProductDescription.Contains(product_description)
)
.ToExpression();
List<QcQualityStatisticsAgain> data = Context
.Queryable<QcQualityStatisticsAgain>()
.Where(predicate)
.OrderByIF(sortType == 1, it => it.QualifiedRate, OrderByType.Desc)
.OrderByIF(sortType == 2, it => it.ProductDescription, OrderByType.Asc)
.OrderByIF(sortType == 0 || sortType == 2, it => it.StartTime, OrderByType.Asc)
.OrderByIF(sortType == 3, it => it.FinishedPartNumber, OrderByType.Asc)
.OrderBy(it => it.WorkorderId)
.OrderBy(it => it.Remark2)
.ToPageList(pageNum, pageSize, ref totalNum);
foreach (QcQualityStatisticsAgain item in data)
{
WmMaterial material = Context
.Queryable<WmMaterial>()
.Where(it => it.Partnumber == item.FinishedPartNumber)
.First();
if (material == null)
{
item.ProductDescription = "此零件号不在物料清单内!";
continue;
}
item.ProductDescription = !string.IsNullOrEmpty(material.Description)
? material.Description
: material.ProductName;
}
return (data, totalNum);
}
/// <summary>
/// 获取质量统计表 三检
/// </summary>
/// <param name="starttime"></param>
/// <param name="endTime"></param>
/// <param name="workorderid"></param>
/// <param name="partnumber"></param>
/// <param name="product_description"></param>
/// <param name="team"></param>
/// <param name="pageNum"></param>
/// <param name="pageSize"></param>
/// <returns></returns>
/// <exception cref="NotImplementedException"></exception>
public (List<QcQualityStatisticsFinal>, int) GetQualityStatisticsTable_final(
DateTime starttime,
DateTime endTime,
string workorderid,
string partnumber,
string product_description,
string team,
int pageNum,
int pageSize,
int sortType = 0
)
{
starttime = starttime.ToLocalTime();
endTime = endTime.ToLocalTime();
int totalNum = 0;
var predicate = Expressionable
.Create<QcQualityStatisticsFinal>()
//XXX:修改查询日期查询的字段
.AndIF(
starttime > new DateTime(2023, 1, 1, 0, 0, 0),
it => it.StartTime >= starttime.ToLocalTime()
)
.AndIF(
endTime > new DateTime(2023, 1, 1, 0, 0, 0),
it => it.StartTime <= endTime.ToLocalTime()
)
.AndIF(
!string.IsNullOrEmpty(workorderid),
it => it.WorkorderId.Contains(workorderid)
)
.AndIF(
!string.IsNullOrEmpty(partnumber),
it => it.FinishedPartNumber.Contains(partnumber)
)
.AndIF(!string.IsNullOrEmpty(team), it => it.Team.Equals(team))
.AndIF(
!string.IsNullOrEmpty(product_description),
it => it.ProductDescription.Contains(product_description)
)
.ToExpression();
List<QcQualityStatisticsFinal> data = Context
.Queryable<QcQualityStatisticsFinal>()
.Where(predicate)
.OrderByIF(sortType == 1, it => it.QualifiedRate, OrderByType.Desc)
.OrderByIF(sortType == 2, it => it.ProductDescription, OrderByType.Asc)
.OrderByIF(sortType == 0 || sortType == 2, it => it.StartTime, OrderByType.Asc)
.OrderByIF(sortType == 3, it => it.FinishedPartNumber, OrderByType.Asc)
.OrderBy(it => it.WorkorderId)
.OrderBy(it => it.Remark2)
.ToPageList(pageNum, pageSize, ref totalNum);
foreach (QcQualityStatisticsFinal item in data)
{
WmMaterial material = Context
.Queryable<WmMaterial>()
.Where(it => it.Partnumber == item.FinishedPartNumber)
.First();
if (material == null)
{
item.ProductDescription = "此零件号不在物料清单内!";
continue;
}
item.ProductDescription = !string.IsNullOrEmpty(material.Description)
? material.Description
: material.ProductName;
}
return (data, totalNum);
}
/// <summary>
/// 获取质量统计表 总表
/// </summary>
/// <param name="starttime"></param>
/// <param name="endTime"></param>
/// <param name="workorderid"></param>
/// <param name="partnumber"></param>
/// <param name="product_description"></param>
/// <param name="team"></param>
/// <param name="pageNum"></param>
/// <param name="pageSize"></param>
/// <returns></returns>
/// <exception cref="NotImplementedException"></exception>
public (List<QcQualityStatisticsTotal>, int) GetQualityStatisticsTable_total(
DateTime starttime,
DateTime endTime,
string workorderid,
string partnumber,
string product_description,
string team,
int pageNum,
int pageSize,
int sortType = 0
)
{
starttime = starttime.ToLocalTime();
endTime = endTime.ToLocalTime();
int totalNum = 0;
var predicate = Expressionable
.Create<QcQualityStatisticsTotal>()
//XXX:修改查询日期查询的字段
.AndIF(
starttime > new DateTime(2023, 1, 1, 0, 0, 0),
it => it.StartTime >= starttime.ToLocalTime()
)
.AndIF(
endTime > new DateTime(2023, 1, 1, 0, 0, 0),
it => it.StartTime <= endTime.ToLocalTime()
)
.AndIF(
!string.IsNullOrEmpty(workorderid),
it => it.WorkorderId.Contains(workorderid)
)
.AndIF(
!string.IsNullOrEmpty(partnumber),
it => it.FinishedPartNumber.Contains(partnumber)
)
.AndIF(!string.IsNullOrEmpty(team), it => it.Team.Equals(team))
.AndIF(
!string.IsNullOrEmpty(product_description),
it => it.ProductDescription.Contains(product_description)
)
.ToExpression();
List<QcQualityStatisticsTotal> data = Context
.Queryable<QcQualityStatisticsTotal>()
.Where(predicate)
.OrderByIF(sortType == 1, it => it.QualifiedRate, OrderByType.Desc)
.OrderByIF(sortType == 2, it => it.ProductDescription, OrderByType.Asc)
.OrderByIF(sortType == 0 || sortType == 2, it => it.StartTime, OrderByType.Asc)
.OrderByIF(sortType == 3, it => it.FinishedPartNumber, OrderByType.Asc)
.OrderBy(it => it.WorkorderId)
.OrderBy(it => it.Remark2)
.ToPageList(pageNum, pageSize, ref totalNum);
foreach (QcQualityStatisticsTotal item in data)
{
WmMaterial material = Context
.Queryable<WmMaterial>()
.Where(it => it.Partnumber == item.FinishedPartNumber)
.First();
if (material == null)
{
item.ProductDescription = "此零件号不在物料清单内!";
continue;
}
item.ProductDescription = !string.IsNullOrEmpty(material.Description)
? material.Description
: material.ProductName;
}
return (data, totalNum);
}
/// <summary>
/// 删除首检,二检,三检报表
/// </summary>
/// <param name="workorderid"></param>
/// <returns></returns>
public int DeleteStatisticsTable(string workorderid)
{
int num = 0;
num =
num
+ Context
.Deleteable<QcQualityStatisticsFirst>()
.Where(it => it.WorkorderId == workorderid)
.ExecuteCommand();
num =
num
+ Context
.Deleteable<QcQualityStatisticsAgain>()
.Where(it => it.WorkorderId == workorderid)
.ExecuteCommand();
num =
num
+ Context
.Deleteable<QcQualityStatisticsFinal>()
.Where(it => it.WorkorderId == workorderid)
.ExecuteCommand();
num =
num
+ Context
.Deleteable<QcQualityStatisticsTotal>()
.Where(it => it.WorkorderId == workorderid)
.ExecuteCommand();
return num;
}
List<QcQualityStatisticsFirstDto> IQCStatisticsService.DownloadStatisticsTableExcel(
DateTime starttime,
DateTime endTime,
string workorderid,
string partnumber,
string product_description,
string team,
int pageNum,
int pageSize,
int type,
int sortType = 0
)
{
try
{
pageNum = 1;
pageSize = 5000;
return type switch
{
// 首检
1
=> DoFirstExcel(
starttime,
endTime,
workorderid,
partnumber,
product_description,
team,
pageNum,
pageSize,
sortType
),
// 抛光
2
=> DoSecondExcel(
starttime,
endTime,
workorderid,
partnumber,
product_description,
team,
pageNum,
pageSize,
sortType
),
// 包装
3
=> DoThirdExcel(
starttime,
endTime,
workorderid,
partnumber,
product_description,
team,
pageNum,
pageSize,
sortType
),
// 总表
4
=> DoTotalExcel(
starttime,
endTime,
workorderid,
partnumber,
product_description,
team,
pageNum,
pageSize,
sortType
),
_ => throw new Exception("获取的报表类型错误!" + type),
};
}
catch (Exception ex)
{
throw new Exception(ex.Message);
}
}
public List<QcQualityStatisticsFirstDto> DoFirstExcel(
DateTime starttime,
DateTime endTime,
string workorderid,
string partnumber,
string product_description,
string team,
int pageNum,
int pageSize,
int sortType
)
{
List<QcQualityStatisticsFirst> list = GetQualityStatisticsTable_first(
starttime,
endTime,
workorderid,
partnumber,
product_description,
team,
pageNum,
pageSize,
sortType
).Item1;
List<QcQualityStatisticsFirstDto> newList = list.Select(
item => new QcQualityStatisticsFirstDto()
{
WorkorderId = item.WorkorderId,
FinishedPartNumber = item.FinishedPartNumber,
ProductDescription = GetDescription(item.FinishedPartNumber),
Color = item.Color,
RequireNumber = item.RequireNumber,
Team = item.Team,
QualifiedNumber = item.QualifiedNumber,
QualifiedRate = item.QualifiedRate ?? 0,
PaoguangTotal = item.PaoguangTotal ?? 0,
DamoTotal = item.DamoTotal ?? 0,
BaofeiTotal = item.BaofeiTotal ?? 0,
StartTime = item.StartTime,
EndTime = item.EndTime,
Remark = item.Remark ?? "",
// 油漆6
PaintSuokong = item.PaintSuokong ?? 0,
PaintZhengkong = item.PaintZhengkong ?? 0,
PaintShiguang = item.PaintShiguang ?? 0,
PaintSecha = item.PaintSecha ?? 0,
PaintDianzi = item.PaintDianzi ?? 0,
PaintOther = item.PaintOther ?? 0,
// 设备7
DeviceShuiban = item.DeviceShuiban ?? 0,
DeviceZandian = item.DeviceZandian ?? 0,
DeviceBianxing = item.DeviceBianxing ?? 0,
DeviceYouzhu = item.DeviceYouzhu ?? 0,
DeviceTuoluo = item.DeviceTuoluo ?? 0,
DeviceZhuangshang = item.DeviceZhuangshang ?? 0,
DeviceOther = item.DeviceOther ?? 0,
// 毛坯6
BlankMaoci = item.BlankMaoci ?? 0,
BlankSuoyin = item.BlankSuoyin ?? 0,
BlankCanshuang = item.BlankCanshuang ?? 0,
BlankShaying = item.BlankShaying ?? 0,
BlankZangdian = item.BlankZangdian ?? 0,
BlankDamo = item.BlankDamo ?? 0,
// 程序5
ProgramLiuguang = item.ProgramLiuguang ?? 0,
ProgramSeqiqueqi = item.ProgramSeqiqueqi ?? 0,
ProgramQingqiqueqi = item.ProgramQingqiqueqi ?? 0,
ProgramJupi = item.ProgramJupi ?? 0,
ProgramOther = item.ProgramOther ?? 0,
// 班组操作6
TeamTuoluocanshuang = item.TeamTuoluocanshuang ?? 0,
TeamQingqiqikuai = item.TeamQingqiqikuai ?? 0,
TeamSeqiqikuai = item.TeamSeqiqikuai ?? 0,
TeamFahua = item.TeamFahua ?? 0,
TeamLiangbang = item.TeamLiangbang ?? 0,
TeamPenglou = item.TeamPenglou ?? 0,
}
)
.ToList();
return newList;
}
public List<QcQualityStatisticsFirstDto> DoSecondExcel(
DateTime starttime,
DateTime endTime,
string workorderid,
string partnumber,
string product_description,
string team,
int pageNum,
int pageSize,
int sortType
)
{
List<QcQualityStatisticsAgain> list = GetQualityStatisticsTable_again(
starttime,
endTime,
workorderid,
partnumber,
product_description,
team,
pageNum,
pageSize,
sortType
).Item1;
List<QcQualityStatisticsFirstDto> newList = list.Select(
item => new QcQualityStatisticsFirstDto()
{
WorkorderId = item.WorkorderId,
FinishedPartNumber = item.FinishedPartNumber,
ProductDescription = GetDescription(item.FinishedPartNumber),
Color = item.Color,
RequireNumber = item.RequireNumber,
Team = item.Team,
QualifiedNumber = item.QualifiedNumber,
QualifiedRate = item.QualifiedRate ?? 0,
PaoguangTotal = item.PaoguangTotal ?? 0,
DamoTotal = item.DamoTotal ?? 0,
BaofeiTotal = item.BaofeiTotal ?? 0,
StartTime = item.StartTime,
EndTime = item.EndTime,
Remark = item.Remark ?? "",
// 油漆6
PaintSuokong = item.PaintSuokong ?? 0,
PaintZhengkong = item.PaintZhengkong ?? 0,
PaintShiguang = item.PaintShiguang ?? 0,
PaintSecha = item.PaintSecha ?? 0,
PaintDianzi = item.PaintDianzi ?? 0,
PaintOther = item.PaintOther ?? 0,
// 设备7
DeviceShuiban = item.DeviceShuiban ?? 0,
DeviceZandian = item.DeviceZandian ?? 0,
DeviceBianxing = item.DeviceBianxing ?? 0,
DeviceYouzhu = item.DeviceYouzhu ?? 0,
DeviceTuoluo = item.DeviceTuoluo ?? 0,
DeviceZhuangshang = item.DeviceZhuangshang ?? 0,
DeviceOther = item.DeviceOther ?? 0,
// 毛坯6
BlankMaoci = item.BlankMaoci ?? 0,
BlankSuoyin = item.BlankSuoyin ?? 0,
BlankCanshuang = item.BlankCanshuang ?? 0,
BlankShaying = item.BlankShaying ?? 0,
BlankZangdian = item.BlankZangdian ?? 0,
BlankDamo = item.BlankDamo ?? 0,
// 程序5
ProgramLiuguang = item.ProgramLiuguang ?? 0,
ProgramSeqiqueqi = item.ProgramSeqiqueqi ?? 0,
ProgramQingqiqueqi = item.ProgramQingqiqueqi ?? 0,
ProgramJupi = item.ProgramJupi ?? 0,
ProgramOther = item.ProgramOther ?? 0,
// 班组操作6
TeamTuoluocanshuang = item.TeamTuoluocanshuang ?? 0,
TeamQingqiqikuai = item.TeamQingqiqikuai ?? 0,
TeamSeqiqikuai = item.TeamSeqiqikuai ?? 0,
TeamFahua = item.TeamFahua ?? 0,
TeamLiangbang = item.TeamLiangbang ?? 0,
TeamPenglou = item.TeamPenglou ?? 0,
}
)
.ToList();
return newList;
}
public List<QcQualityStatisticsFirstDto> DoThirdExcel(
DateTime starttime,
DateTime endTime,
string workorderid,
string partnumber,
string product_description,
string team,
int pageNum,
int pageSize,
int sortType
)
{
List<QcQualityStatisticsFinal> list = GetQualityStatisticsTable_final(
starttime,
endTime,
workorderid,
partnumber,
product_description,
team,
pageNum,
pageSize,
sortType
).Item1;
List<QcQualityStatisticsFirstDto> newList = list.Select(
item => new QcQualityStatisticsFirstDto()
{
WorkorderId = item.WorkorderId,
FinishedPartNumber = item.FinishedPartNumber,
ProductDescription = GetDescription(item.FinishedPartNumber),
Color = item.Color,
RequireNumber = item.RequireNumber,
Team = item.Team,
QualifiedNumber = item.QualifiedNumber,
QualifiedRate = item.QualifiedRate ?? 0,
PaoguangTotal = item.PaoguangTotal ?? 0,
DamoTotal = item.DamoTotal ?? 0,
BaofeiTotal = item.BaofeiTotal ?? 0,
StartTime = item.StartTime,
EndTime = item.EndTime,
Remark = item.Remark ?? "",
// 油漆6
PaintSuokong = item.PaintSuokong ?? 0,
PaintZhengkong = item.PaintZhengkong ?? 0,
PaintShiguang = item.PaintShiguang ?? 0,
PaintSecha = item.PaintSecha ?? 0,
PaintDianzi = item.PaintDianzi ?? 0,
PaintOther = item.PaintOther ?? 0,
// 设备7
DeviceShuiban = item.DeviceShuiban ?? 0,
DeviceZandian = item.DeviceZandian ?? 0,
DeviceBianxing = item.DeviceBianxing ?? 0,
DeviceYouzhu = item.DeviceYouzhu ?? 0,
DeviceTuoluo = item.DeviceTuoluo ?? 0,
DeviceZhuangshang = item.DeviceZhuangshang ?? 0,
DeviceOther = item.DeviceOther ?? 0,
// 毛坯6
BlankMaoci = item.BlankMaoci ?? 0,
BlankSuoyin = item.BlankSuoyin ?? 0,
BlankCanshuang = item.BlankCanshuang ?? 0,
BlankShaying = item.BlankShaying ?? 0,
BlankZangdian = item.BlankZangdian ?? 0,
BlankDamo = item.BlankDamo ?? 0,
// 程序5
ProgramLiuguang = item.ProgramLiuguang ?? 0,
ProgramSeqiqueqi = item.ProgramSeqiqueqi ?? 0,
ProgramQingqiqueqi = item.ProgramQingqiqueqi ?? 0,
ProgramJupi = item.ProgramJupi ?? 0,
ProgramOther = item.ProgramOther ?? 0,
// 班组操作6
TeamTuoluocanshuang = item.TeamTuoluocanshuang ?? 0,
TeamQingqiqikuai = item.TeamQingqiqikuai ?? 0,
TeamSeqiqikuai = item.TeamSeqiqikuai ?? 0,
TeamFahua = item.TeamFahua ?? 0,
TeamLiangbang = item.TeamLiangbang ?? 0,
TeamPenglou = item.TeamPenglou ?? 0,
}
)
.ToList();
return newList;
}
public List<QcQualityStatisticsFirstDto> DoTotalExcel(
DateTime starttime,
DateTime endTime,
string workorderid,
string partnumber,
string product_description,
string team,
int pageNum,
int pageSize,
int sortType
)
{
List<QcQualityStatisticsTotal> list = GetQualityStatisticsTable_total(
starttime,
endTime,
workorderid,
partnumber,
product_description,
team,
pageNum,
pageSize,
sortType
).Item1;
List<QcQualityStatisticsFirstDto> newList = list.Select(
item => new QcQualityStatisticsFirstDto()
{
WorkorderId = item.WorkorderId,
FinishedPartNumber = item.FinishedPartNumber,
ProductDescription = GetDescription(item.FinishedPartNumber),
Color = item.Color,
RequireNumber = item.RequireNumber,
Team = item.Team,
QualifiedNumber = item.QualifiedNumber,
QualifiedRate = item.QualifiedRate ?? 0,
PaoguangTotal = item.PaoguangTotal ?? 0,
DamoTotal = item.DamoTotal ?? 0,
BaofeiTotal = item.BaofeiTotal ?? 0,
StartTime = item.StartTime,
EndTime = item.EndTime,
Remark = item.Remark ?? "",
// 油漆6
PaintSuokong = item.PaintSuokong ?? 0,
PaintZhengkong = item.PaintZhengkong ?? 0,
PaintShiguang = item.PaintShiguang ?? 0,
PaintSecha = item.PaintSecha ?? 0,
PaintDianzi = item.PaintDianzi ?? 0,
PaintOther = item.PaintOther ?? 0,
// 设备7
DeviceShuiban = item.DeviceShuiban ?? 0,
DeviceZandian = item.DeviceZandian ?? 0,
DeviceBianxing = item.DeviceBianxing ?? 0,
DeviceYouzhu = item.DeviceYouzhu ?? 0,
DeviceTuoluo = item.DeviceTuoluo ?? 0,
DeviceZhuangshang = item.DeviceZhuangshang ?? 0,
DeviceOther = item.DeviceOther ?? 0,
// 毛坯6
BlankMaoci = item.BlankMaoci ?? 0,
BlankSuoyin = item.BlankSuoyin ?? 0,
BlankCanshuang = item.BlankCanshuang ?? 0,
BlankShaying = item.BlankShaying ?? 0,
BlankZangdian = item.BlankZangdian ?? 0,
BlankDamo = item.BlankDamo ?? 0,
// 程序5
ProgramLiuguang = item.ProgramLiuguang ?? 0,
ProgramSeqiqueqi = item.ProgramSeqiqueqi ?? 0,
ProgramQingqiqueqi = item.ProgramQingqiqueqi ?? 0,
ProgramJupi = item.ProgramJupi ?? 0,
ProgramOther = item.ProgramOther ?? 0,
// 班组操作6
TeamTuoluocanshuang = item.TeamTuoluocanshuang ?? 0,
TeamQingqiqikuai = item.TeamQingqiqikuai ?? 0,
TeamSeqiqikuai = item.TeamSeqiqikuai ?? 0,
TeamFahua = item.TeamFahua ?? 0,
TeamLiangbang = item.TeamLiangbang ?? 0,
TeamPenglou = item.TeamPenglou ?? 0,
}
)
.ToList();
return newList;
}
public string GetDescription(string partnumber)
{
try
{
WmMaterial material = Context
.Queryable<WmMaterial>()
.Where(it => it.Partnumber == partnumber)
.First();
if (material == null)
{
return "此零件号不在物料清单内!";
}
else
{
return !string.IsNullOrEmpty(material.Description)
? material.Description
: material.ProductName;
}
}
catch (Exception ex)
{
return "获取描述异常!";
}
}
}
}