Browse Source

按计划开发

master
me 3 days ago
parent
commit
a29d747b25
  1. 2
      Modules/新版JIT或JIS系统服务端/src/WY.NewJit.Application.Contracts/Extends/MenBanReports/MenBanPrintInputDto.cs
  2. 46
      Modules/新版JIT或JIS系统服务端/src/WY.NewJit.Application.Contracts/MsgBaseData/Dics/Dtos/DicItemDto.cs
  3. 51
      Modules/新版JIT或JIS系统服务端/src/WY.NewJit.Application.Contracts/MsgCheck/BillM100s/Dtos/BillM100Dto.cs
  4. 26
      Modules/新版JIT或JIS系统服务端/src/WY.NewJit.Application.Contracts/MsgCheck/BillM100s/Dtos/BillM100PartDto.cs
  5. 26
      Modules/新版JIT或JIS系统服务端/src/WY.NewJit.Application.Contracts/MsgCheck/BillM110s/Dtos/BillM110Dto.cs
  6. 28
      Modules/新版JIT或JIS系统服务端/src/WY.NewJit.Application.Contracts/MsgCheck/BillM110s/Dtos/BillM110PartDto.cs
  7. 6
      Modules/新版JIT或JIS系统服务端/src/WY.NewJit.Application.Contracts/MsgCheck/BillM110s/Interfaces/IBillM110AppService.cs
  8. 116
      Modules/新版JIT或JIS系统服务端/src/WY.NewJit.Application.Contracts/WY.NewJit.Application.Contracts.xml
  9. 14
      Modules/新版JIT或JIS系统服务端/src/WY.NewJit.Application/MsgBaseData/Dics/DicAppService.cs
  10. 485
      Modules/新版JIT或JIS系统服务端/src/WY.NewJit.Application/MsgCheck/BillM100s/BillM100AppService.cs
  11. 860
      Modules/新版JIT或JIS系统服务端/src/WY.NewJit.Application/MsgCheck/BillM110s/BillM110AppService.cs
  12. 49
      Modules/新版JIT或JIS系统服务端/src/WY.NewJit.Application/WY.NewJit.Application.xml
  13. 6
      Modules/新版JIT或JIS系统服务端/src/WY.NewJit.Domain.Shared/Common/ObjectResultDto.cs
  14. 6
      Modules/新版JIT或JIS系统服务端/src/WY.NewJit.Domain.Shared/MsgCheck/BillStatusEnum.cs
  15. 24
      Modules/新版JIT或JIS系统服务端/src/WY.NewJit.Domain/MsgBaseData/Entitys/DicItem.cs
  16. 4
      Modules/新版JIT或JIS系统服务端/src/WY.NewJit.Domain/MsgBaseData/Services/LineSNDomianService.cs
  17. 2
      Shared/Win.Sfs.Shared/obj/Debug/netcoreapp5/Win.Sfs.Shared.AssemblyInfo.cs
  18. 2
      Shared/Win.Sfs.Shared/obj/Debug/netcoreapp5/Win.Sfs.Shared.AssemblyInfoInputs.cache
  19. 2
      Shared/Win.Utils/obj/Debug/netcoreapp5/Win.Utils.AssemblyInfo.cs
  20. 2
      Shared/Win.Utils/obj/Debug/netcoreapp5/Win.Utils.AssemblyInfoInputs.cache

2
Modules/新版JIT或JIS系统服务端/src/WY.NewJit.Application.Contracts/Extends/MenBanReports/MenBanPrintInputDto.cs

@ -37,7 +37,7 @@ namespace WY.NewJit.Extends
/// <summary> /// <summary>
/// 补打时使用 /// 补打时使用
/// </summary> /// </summary>
public virtual List<Guid> M100IdList { get; set; } //public virtual List<Guid> M100IdList { get; set; }
#endregion #endregion
} }

46
Modules/新版JIT或JIS系统服务端/src/WY.NewJit.Application.Contracts/MsgBaseData/Dics/Dtos/DicItemDto.cs

@ -27,5 +27,51 @@ namespace WY.NewJit.MsgBaseData
/// 字典项名称 /// 字典项名称
/// </summary> /// </summary>
public string DicItemName { get; set; } public string DicItemName { get; set; }
/// <summary>
/// 分类1(零件大类对应分组)
/// </summary>
public virtual string DicItemSort1 { get; set; }
/// <summary>
/// 分类2 (零件大类对应产线)
/// </summary>
public virtual string DicItemSort2 { get; set; }
/// <summary>
/// 分类3(零件大类对应车型)
/// </summary>
public virtual string DicItemSort3 { get; set; }
/// <summary>
/// 分类4(零件大类对应打印报表的三位零件大类)
/// </summary>
public virtual string DicItemSort4 { get; set; }
/// <summary>
/// 分类5 (零件大类对应客户零件号)
/// </summary>
public virtual string DicItemSort5 { get; set; }
/// <summary>
/// 分类6(零件大类对应显示车型)
/// </summary>
public virtual string DicItemSort6 { get; set; }
/// <summary>
/// 分类7(零件大类对应报表字段显示顺序)
/// </summary>
public virtual string DicItemSort7 { get; set; }
/// <summary>
/// 分类8(零件大类对应装箱清单号的前缀,例如C或T)
/// </summary>
public virtual string DicItemSort8 { get; set; }
/// <summary>
/// 分类9(零件大类对应 打印标准数量 12 或 24)
/// </summary>
public virtual string DicItemSort9 { get; set; }
} }
} }

51
Modules/新版JIT或JIS系统服务端/src/WY.NewJit.Application.Contracts/MsgCheck/BillM100s/Dtos/BillM100Dto.cs

@ -45,14 +45,14 @@ namespace WY.NewJit.MsgCheck
/// <summary> /// <summary>
/// 总成ID /// 总成ID
/// </summary> /// </summary>
[ExporterHeader(DisplayName = "总成ID")] [ExporterHeader(IsIgnore =true)]
[ImporterHeader(Name = "总成ID")] [ImporterHeader(IsIgnore = true)]
public Guid? AssemblyID { get; set; } public Guid? AssemblyID { get; set; }
/// <summary> /// <summary>
/// 上线时间 /// 上线时间
/// </summary> /// </summary>
[ExporterHeader(DisplayName = "上线时间")] [ExporterHeader(DisplayName = "上线时间", Format ="yyyy-MM-dd HH:mm")]
[ImporterHeader(Name = "上线时间")] [ImporterHeader(Name = "上线时间")]
public DateTime? OnlineTime { get; set; } public DateTime? OnlineTime { get; set; }
@ -73,14 +73,14 @@ namespace WY.NewJit.MsgCheck
/// <summary> /// <summary>
/// 版本 /// 版本
/// </summary> /// </summary>
[ExporterHeader(DisplayName = "版本")] [ExporterHeader(IsIgnore = true)]
[ImporterHeader(Name = "版本")] [ImporterHeader(IsIgnore = true)]
public string Version { get; set; } public string Version { get; set; }
/// <summary> /// <summary>
/// 接收时间 /// 接收时间
/// </summary> /// </summary>
[ExporterHeader(DisplayName = "接收时间")] [ExporterHeader(DisplayName = "接收时间", Format = "yyyy-MM-dd HH:mm")]
[ImporterHeader(Name = "接收时间")] [ImporterHeader(Name = "接收时间")]
public DateTime? ReceiveTime { get; set; } public DateTime? ReceiveTime { get; set; }
@ -101,28 +101,55 @@ namespace WY.NewJit.MsgCheck
/// <summary> /// <summary>
/// 涂装重复单据包含的零件列表 /// 涂装重复单据包含的零件列表
/// </summary> /// </summary>
[ExporterHeader(IsIgnore = true)]
[ImporterHeader(IsIgnore = true)]
public List<BillM100PartDto> BillM100Parts { get; set; } public List<BillM100PartDto> BillM100Parts { get; set; }
/// <summary> /// <summary>
/// 手工操作类型:0 none,1 手工添加,2 手工修改 /// 手工操作类型:0 none,1 手工添加,2 手工修改
/// </summary> /// </summary>
[ExporterHeader(DisplayName = "手工操作类型")] [ExporterHeader(IsIgnore = true)]
[ImporterHeader(Name = "手工操作类型")] [ImporterHeader(IsIgnore = true)]
public ManualOperationTypeEnum OperationType { get; set; } public ManualOperationTypeEnum OperationType { get; set; }
/// <summary> /// <summary>
/// 手工操作员 /// 手工操作员
/// </summary> /// </summary>
[ExporterHeader(DisplayName = "手工操作员")] [ExporterHeader(IsIgnore = true)]
[ImporterHeader(Name = "手工操作员")] [ImporterHeader(IsIgnore = true)]
public string Operator { get; set; } public string Operator { get; set; }
/// <summary> /// <summary>
/// 手工操作日期 /// 手工操作日期
/// </summary> /// </summary>
[ExporterHeader(DisplayName = "手工操作日期")] [ExporterHeader(IsIgnore = true)]
[ImporterHeader(Name = "手工操作日期")] [ImporterHeader(IsIgnore = true)]
public DateTime? OperationTime { get; set; } public DateTime? OperationTime { get; set; }
[ExporterHeader(DisplayName = "零件1")]
[ImporterHeader(Name = "零件1")]
public string PartCode1 { get; set; }
[ExporterHeader(DisplayName = "零件2")]
[ImporterHeader(Name = "零件2")]
public string PartCode2 { get; set; }
[ExporterHeader(DisplayName = "零件3")]
[ImporterHeader(Name = "零件3")]
public string PartCode3 { get; set; }
[ExporterHeader(DisplayName = "零件4")]
[ImporterHeader(Name = "零件4")]
public string PartCode4 { get; set; }
[ExporterHeader(DisplayName = "零件5")]
[ImporterHeader(Name = "零件5")]
public string PartCode5 { get; set; }
[ExporterHeader(DisplayName = "零件6")]
[ImporterHeader(Name = "零件6")]
public string PartCode6 { get; set; }
} }
} }

26
Modules/新版JIT或JIS系统服务端/src/WY.NewJit.Application.Contracts/MsgCheck/BillM100s/Dtos/BillM100PartDto.cs

@ -34,5 +34,31 @@ namespace WY.NewJit.MsgCheck
[ExporterHeader(DisplayName = "描述")] [ExporterHeader(DisplayName = "描述")]
[ImporterHeader(Name = "描述")] [ImporterHeader(Name = "描述")]
public string Description { get; set; } public string Description { get; set; }
/// <summary>
/// 零件类型:产线
/// </summary>
public virtual string PartType { get; set; }
/// <summary>
/// 零件类型:分组
/// </summary>
public virtual string PartType2 { get; set; }
/// <summary>
/// 零件类型:零件大类
/// </summary>
public virtual string PartType3 { get; set; }
/// <summary>
/// 零件在主表横向排列顺序
/// </summary>
public int? DisplaySN { get; set; }
/// <summary>
/// 零件在主表横向排列显示的列名
/// </summary>
public string DisplayColumnName { get; set; }
} }
} }

26
Modules/新版JIT或JIS系统服务端/src/WY.NewJit.Application.Contracts/MsgCheck/BillM110s/Dtos/BillM110Dto.cs

@ -124,5 +124,31 @@ namespace WY.NewJit.MsgCheck
[ImporterHeader(Name = "手工操作日期")] [ImporterHeader(Name = "手工操作日期")]
public DateTime? OperationTime { get; set; } public DateTime? OperationTime { get; set; }
#region 横向显示零件
[ExporterHeader(DisplayName = "零件1")]
[ImporterHeader(Name = "零件1")]
public string PartCode1 { get; set; }
[ExporterHeader(DisplayName = "零件2")]
[ImporterHeader(Name = "零件2")]
public string PartCode2 { get; set; }
[ExporterHeader(DisplayName = "零件3")]
[ImporterHeader(Name = "零件3")]
public string PartCode3 { get; set; }
[ExporterHeader(DisplayName = "零件4")]
[ImporterHeader(Name = "零件4")]
public string PartCode4 { get; set; }
[ExporterHeader(DisplayName = "零件5")]
[ImporterHeader(Name = "零件5")]
public string PartCode5 { get; set; }
[ExporterHeader(DisplayName = "零件6")]
[ImporterHeader(Name = "零件6")]
public string PartCode6 { get; set; }
#endregion
} }
} }

28
Modules/新版JIT或JIS系统服务端/src/WY.NewJit.Application.Contracts/MsgCheck/BillM110s/Dtos/BillM110PartDto.cs

@ -34,5 +34,33 @@ namespace WY.NewJit.MsgCheck
[ExporterHeader(DisplayName = "描述")] [ExporterHeader(DisplayName = "描述")]
[ImporterHeader(Name = "描述")] [ImporterHeader(Name = "描述")]
public string Description { get; set; } public string Description { get; set; }
#region 新增
/// <summary>
/// 零件类型:产线
/// </summary>
public virtual string PartType { get; set; }
/// <summary>
/// 零件类型:分组
/// </summary>
public virtual string PartType2 { get; set; }
/// <summary>
/// 零件类型:零件大类
/// </summary>
public virtual string PartType3 { get; set; }
/// <summary>
/// 零件在主表横向排列顺序
/// </summary>
public int? DisplaySN { get; set; }
/// <summary>
/// 零件在主表横向排列显示的列名
/// </summary>
public string DisplayColumnName { get; set; }
#endregion
} }
} }

6
Modules/新版JIT或JIS系统服务端/src/WY.NewJit.Application.Contracts/MsgCheck/BillM110s/Interfaces/IBillM110AppService.cs

@ -67,14 +67,14 @@ namespace WY.NewJit.MsgCheck
/// </summary> /// </summary>
/// <param name="productLine">生产线</param> /// <param name="productLine">生产线</param>
/// <returns>起始大众顺序号</returns> /// <returns>起始大众顺序号</returns>
Task<ObjectResultDto<int?>> GetPrintStartHostSN2(string productLine, string isZhuHuBan,string GroupName = null); //Task<ObjectResultDto<int?>> GetPrintStartHostSN2(string productLine, string isZhuHuBan,string GroupName = null);
/// <summary> /// <summary>
/// 打印前检查门板大众顺序号是否断号 /// 打印前检查门板大众顺序号是否断号
/// </summary> /// </summary>
/// <param name="input"></param> /// <param name="input"></param>
/// <returns>断号时Item不为空</returns> /// <returns>断号时Item不为空</returns>
Task<ListResultDto<string>> CheckMBHostSNBreakNum(MenBanPrintInputDto input); //Task<ListResultDto<string>> CheckMBHostSNBreakNum(MenBanPrintInputDto input);
/// <summary> /// <summary>
/// 打印前检查柱护板大众顺序号是否断号 /// 打印前检查柱护板大众顺序号是否断号
@ -105,7 +105,7 @@ namespace WY.NewJit.MsgCheck
/// </summary> /// </summary>
/// <param name="input">生产线编号列表</param> /// <param name="input">生产线编号列表</param>
/// <returns>生产线超时情况</returns> /// <returns>生产线超时情况</returns>
Task<ListResultDto<TimeOutRemindResultDto>> ProductLineTimeoutRemind(TimeOutRemindInputDto input); //Task<ListResultDto<TimeOutRemindResultDto>> ProductLineTimeoutRemind(TimeOutRemindInputDto input);
//Task<PagedResultDto<ResultBillM110Dto>> GetReplenishPrintListAsync(QueryBillM110Dto input); //Task<PagedResultDto<ResultBillM110Dto>> GetReplenishPrintListAsync(QueryBillM110Dto input);

116
Modules/新版JIT或JIS系统服务端/src/WY.NewJit.Application.Contracts/WY.NewJit.Application.Contracts.xml

@ -945,6 +945,51 @@
字典项名称 字典项名称
</summary> </summary>
</member> </member>
<member name="P:WY.NewJit.MsgBaseData.DicItemDto.DicItemSort1">
<summary>
分类1(零件大类对应分组)
</summary>
</member>
<member name="P:WY.NewJit.MsgBaseData.DicItemDto.DicItemSort2">
<summary>
分类2 (零件大类对应产线)
</summary>
</member>
<member name="P:WY.NewJit.MsgBaseData.DicItemDto.DicItemSort3">
<summary>
分类3(零件大类对应车型)
</summary>
</member>
<member name="P:WY.NewJit.MsgBaseData.DicItemDto.DicItemSort4">
<summary>
分类4(零件大类对应打印报表的三位零件大类)
</summary>
</member>
<member name="P:WY.NewJit.MsgBaseData.DicItemDto.DicItemSort5">
<summary>
分类5 (零件大类对应客户零件号)
</summary>
</member>
<member name="P:WY.NewJit.MsgBaseData.DicItemDto.DicItemSort6">
<summary>
分类6(零件大类对应显示车型)
</summary>
</member>
<member name="P:WY.NewJit.MsgBaseData.DicItemDto.DicItemSort7">
<summary>
分类7(零件大类对应报表字段显示顺序)
</summary>
</member>
<member name="P:WY.NewJit.MsgBaseData.DicItemDto.DicItemSort8">
<summary>
分类8(零件大类对应装箱清单号的前缀,例如C或T)
</summary>
</member>
<member name="P:WY.NewJit.MsgBaseData.DicItemDto.DicItemSort9">
<summary>
分类9(零件大类对应 打印标准数量 12 或 24)
</summary>
</member>
<!-- Badly formed XML comment ignored for member "M:WY.NewJit.MsgBaseData.IDicAppService.GetDicListAsync(System.String)" --> <!-- Badly formed XML comment ignored for member "M:WY.NewJit.MsgBaseData.IDicAppService.GetDicListAsync(System.String)" -->
<member name="P:WY.NewJit.MsgBaseData.CreateUpdateExcludePartCfgDto.VehicleModelCode"> <member name="P:WY.NewJit.MsgBaseData.CreateUpdateExcludePartCfgDto.VehicleModelCode">
<summary> <summary>
@ -1546,6 +1591,31 @@
描述 描述
</summary> </summary>
</member> </member>
<member name="P:WY.NewJit.MsgCheck.BillM100PartDto.PartType">
<summary>
零件类型:产线
</summary>
</member>
<member name="P:WY.NewJit.MsgCheck.BillM100PartDto.PartType2">
<summary>
零件类型:分组
</summary>
</member>
<member name="P:WY.NewJit.MsgCheck.BillM100PartDto.PartType3">
<summary>
零件类型:零件大类
</summary>
</member>
<member name="P:WY.NewJit.MsgCheck.BillM100PartDto.DisplaySN">
<summary>
零件在主表横向排列顺序
</summary>
</member>
<member name="P:WY.NewJit.MsgCheck.BillM100PartDto.DisplayColumnName">
<summary>
零件在主表横向排列显示的列名
</summary>
</member>
<member name="P:WY.NewJit.MsgCheck.CreateUpdateBillM100Dto.SerialNum"> <member name="P:WY.NewJit.MsgCheck.CreateUpdateBillM100Dto.SerialNum">
<summary> <summary>
流水号# 流水号#
@ -2092,6 +2162,31 @@
描述 描述
</summary> </summary>
</member> </member>
<member name="P:WY.NewJit.MsgCheck.BillM110PartDto.PartType">
<summary>
零件类型:产线
</summary>
</member>
<member name="P:WY.NewJit.MsgCheck.BillM110PartDto.PartType2">
<summary>
零件类型:分组
</summary>
</member>
<member name="P:WY.NewJit.MsgCheck.BillM110PartDto.PartType3">
<summary>
零件类型:零件大类
</summary>
</member>
<member name="P:WY.NewJit.MsgCheck.BillM110PartDto.DisplaySN">
<summary>
零件在主表横向排列顺序
</summary>
</member>
<member name="P:WY.NewJit.MsgCheck.BillM110PartDto.DisplayColumnName">
<summary>
零件在主表横向排列显示的列名
</summary>
</member>
<member name="P:WY.NewJit.MsgCheck.CreateUpdateBillM110Dto.SerialNum"> <member name="P:WY.NewJit.MsgCheck.CreateUpdateBillM110Dto.SerialNum">
<summary> <summary>
流水号# 流水号#
@ -2441,27 +2536,6 @@
<param name="input">导入文件流</param> <param name="input">导入文件流</param>
<returns>执行成功返回真</returns> <returns>执行成功返回真</returns>
</member> </member>
<member name="M:WY.NewJit.MsgCheck.IBillM110AppService.GetPrintStartHostSN2(System.String,System.String,System.String)">
<summary>
根据生产线获取正常打印单据的起始大众顺序号
</summary>
<param name="productLine">生产线</param>
<returns>起始大众顺序号</returns>
</member>
<member name="M:WY.NewJit.MsgCheck.IBillM110AppService.CheckMBHostSNBreakNum(WY.NewJit.Extends.MenBanPrintInputDto)">
<summary>
打印前检查门板大众顺序号是否断号
</summary>
<param name="input"></param>
<returns>断号时Item不为空</returns>
</member>
<member name="M:WY.NewJit.MsgCheck.IBillM110AppService.ProductLineTimeoutRemind(WY.NewJit.MsgCheck.TimeOutRemindInputDto)">
<summary>
生产线超时提醒
</summary>
<param name="input">生产线编号列表</param>
<returns>生产线超时情况</returns>
</member>
<member name="T:WY.NewJit.MsgCheck.BillR100Dto"> <member name="T:WY.NewJit.MsgCheck.BillR100Dto">
<summary> <summary>
零件查询结果DTO 零件查询结果DTO

14
Modules/新版JIT或JIS系统服务端/src/WY.NewJit.Application/MsgBaseData/Dics/DicAppService.cs

@ -77,12 +77,18 @@ namespace WY.NewJit.MsgBaseData
{ {
List<DicItem> lst = _dicDomainService.GetDicItems(dicTypeName); List<DicItem> lst = _dicDomainService.GetDicItems(dicTypeName);
List<DicItemDto> items = List<DicItemDto> dtoLst = ObjectMapper.Map<List<DicItem>, List<DicItemDto>>(lst);
ObjectMapper.Map<List<DicItem>, List<DicItemDto>>(lst);
items = items.OrderBy(itm => itm.DicItemCode).ThenBy(itm => itm.DicItemName).ToList(); if (dicTypeName == "零件大类")
{
dtoLst = dtoLst.OrderBy(itm => itm.DicItemSort2).ThenBy(itm => itm.DicItemSort1).ThenBy(itm => itm.DicItemSort7).ToList();
}
else
{
dtoLst = dtoLst.OrderBy(itm => itm.DicItemCode).ThenBy(itm => itm.DicItemName).ToList();
}
return new ListResultDto<DicItemDto>(items); return new ListResultDto<DicItemDto>(dtoLst);
} }
catch (Exception ex) catch (Exception ex)
{ {

485
Modules/新版JIT或JIS系统服务端/src/WY.NewJit.Application/MsgCheck/BillM100s/BillM100AppService.cs

@ -1,31 +1,32 @@
using Magicodes.ExporterAndImporter.Core; using Magicodes.ExporterAndImporter.Core;
using Magicodes.ExporterAndImporter.Excel; using Magicodes.ExporterAndImporter.Excel;
using Microsoft.AspNetCore.Mvc;
using Microsoft.EntityFrameworkCore; using Microsoft.EntityFrameworkCore;
using Microsoft.Extensions.Logging; using Microsoft.Extensions.Logging;
using Shouldly;
using System; using System;
using System.Collections.Generic; using System.Collections.Generic;
using System.ComponentModel;
using System.Diagnostics;
using System.Linq; using System.Linq;
using System.Linq.Dynamic.Core; using System.Linq.Dynamic.Core;
using System.Reflection;
using System.Text; using System.Text;
using System.Threading.Tasks; using System.Threading.Tasks;
using Volo.Abp;
using Volo.Abp.Application.Dtos; using Volo.Abp.Application.Dtos;
using Volo.Abp.Application.Services; using Volo.Abp.Application.Services;
using Volo.Abp.BlobStoring;
using Volo.Abp.Domain.Repositories; using Volo.Abp.Domain.Repositories;
using Volo.Abp.Uow;
using Volo.Abp.Domain.Repositories.Dapper; using Volo.Abp.Domain.Repositories.Dapper;
using WY.NewJit.EntityFrameworkCore; using Volo.Abp.Uow;
using WY.NewJit.Common; using WY.NewJit.Common;
using Shouldly; using WY.NewJit.Commons;
using Volo.Abp.BlobStoring; using WY.NewJit.EntityFrameworkCore;
using Microsoft.AspNetCore.Mvc;
using WY.NewJit.Extends; using WY.NewJit.Extends;
using WY.NewJit.MsgBaseData;
using WY.NewJit.Extends.PaiGe; using WY.NewJit.Extends.PaiGe;
using WY.NewJit.Extends.PaiGe.WMS; using WY.NewJit.Extends.PaiGe.WMS;
using System.Reflection; using WY.NewJit.MsgBaseData;
using WY.NewJit.Commons;
using Volo.Abp;
using System.Diagnostics;
namespace WY.NewJit.MsgCheck namespace WY.NewJit.MsgCheck
{ {
@ -607,6 +608,239 @@ select * from
return ret; return ret;
} }
/// <summary>
/// 包含主表横向排列零件字段
/// </summary>
/// <param name="input"></param>
/// <returns></returns>
private async Task<M100_M110_Result> QueryByConditionAsync2(QueryBillM100Dto input)
{
M100_M110_Result ret = new M100_M110_Result();
//取零件大类配置
List<DicItem> partLargeTypeLst = await _dicItemRepository.GetListAsync(itm => itm.DicTypeCode == "零件大类");
partLargeTypeLst = partLargeTypeLst.OrderBy(itm => itm.DicItemSort2).ThenBy(itm => itm.DicItemSort1).ToList();
var query = await _billM100Repository.GetQueryableAsync();
var includeQry = query.Include(itm => itm.BillM100Parts);
var m100Query = includeQry.Where(itm => itm.IsReceiveM110 == false || itm.IsReceiveM110 == null);
if (input.SerialNumBegin != null)
{
m100Query = m100Query.Where(itm => itm.SerialNum >= input.SerialNumBegin);
}
if (input.SerialNumEnd != null)
{
m100Query = m100Query.Where(itm => itm.SerialNum <= input.SerialNumBegin);
}
if (input.HostSNBegin != null)
{
m100Query = m100Query.Where(itm => itm.HostSN >= input.HostSNBegin);
}
if (input.HostSNEnd != null)
{
m100Query = m100Query.Where(itm => itm.HostSN <= input.HostSNEnd);
}
if (!string.IsNullOrEmpty(input.KNRBegin))
{
m100Query = m100Query.Where(itm => itm.KNR.CompareTo(input.KNRBegin) >= 0);
}
if (!string.IsNullOrEmpty(input.KNREnd))
{
m100Query = m100Query.Where(itm => itm.KNR.CompareTo(input.KNREnd) <= 0);
}
if (!string.IsNullOrEmpty(input.VINBegin))
{
m100Query = m100Query.Where(itm => itm.VIN.CompareTo(input.VINBegin) >= 0);
}
if (!string.IsNullOrEmpty(input.VINEnd))
{
m100Query = m100Query.Where(itm => itm.VIN.CompareTo(input.VINEnd) <= 0);
}
if (input.AssemblyID != null)
{
m100Query = m100Query.Where(itm => itm.AssemblyID != null);
}
if (input.OnlineTimeBegin != null)
{
m100Query = m100Query.Where(itm => itm.OnlineTime >= input.OnlineTimeBegin);
}
if (input.OnlineTimeEnd != null)
{
m100Query = m100Query.Where(itm => itm.OnlineTime <= input.OnlineTimeEnd);
}
if (input.VehicleModelCode != null)
{
m100Query = m100Query.Where(itm => itm.VehicleModelCode == input.VehicleModelCode);
}
if (input.ProductLine != null)
{
m100Query = m100Query.Where(itm => itm.ProductLine == input.ProductLine);
}
if (input.Version != null)
{
m100Query = m100Query.Where(itm => itm.Version == input.Version);
}
if (input.ReceiveTimeBegin != null)
{
m100Query = m100Query.Where(itm => itm.ReceiveTime >= input.ReceiveTimeBegin);
}
if (input.ReceiveTimeEnd != null)
{
m100Query = m100Query.Where(itm => itm.ReceiveTime <= input.ReceiveTimeEnd);
}
//if (input.IsBillMaintenance == true) //M100单据信息维护模块使用
//{
// where += " and b.Operator is not null";
//}
if (input.CanNotPrint == true)
{
m100Query = m100Query.Where(itm => itm.CanNotPrint == true);
}
else if (input.CanNotPrint == false)
{
m100Query = m100Query.Where(itm => itm.CanNotPrint == false || itm.CanNotPrint == null);
}
if (input.ZHBBillStatus != null && input.ZHBBillStatus != ZHBBillStatusEnum.None)
{
if (input.ZHBBillStatus == ZHBBillStatusEnum.Print) //柱护板已打印
{
m100Query = m100Query.Where(itm => itm.PrintBillNum != "" && itm.PrintBillNum != null);
}
else if (input.ZHBBillStatus == ZHBBillStatusEnum.NotPrint) //柱护板未打印
{
m100Query = m100Query.Where(itm => itm.PrintBillNum == "" || itm.PrintBillNum == null);
}
}
else if (input.BillStatus != null && input.BillStatus != BillStatusEnum.None)
{
m100Query = m100Query.Where(itm => itm.BillStatus == input.BillStatus);
}
else
{
//m100Query = m100Query.Where(itm => itm.BillStatus == BillStatusEnum.Match || itm.BillStatus == BillStatusEnum.Publish); //单据状态是已匹配、已打印
}
if (input.IsNeedReplenishPrint == true) //只显示需要补打的记录
{
m100Query = m100Query.Where(itm => itm.NeedReplenishPrint == 1);
}
//M100
var m100Lst = m100Query.OrderBy(itm => itm.SerialNumStr).Skip(input.SkipCount).Take(input.MaxResultCount).OrderByDescending(itm => itm.SerialNumStr).ToList(); //倒序排列
List<BillM100Dto> m100Dtos = ObjectMapper.Map<List<BillM100>, List<BillM100Dto>>(m100Lst);
if (m100Dtos.Count == 0)
{
return ret;
}
var m100Parts = m100Dtos[0].BillM100Parts;
foreach (BillM100Dto m100Dto in m100Dtos) //遍历M100
{
foreach (var partDto in m100Dto.BillM100Parts) //遍历子件
{
//按产线、分组、零件大类 过滤
var partLargeTypeObj = partLargeTypeLst.FirstOrDefault(itm =>
itm.DicItemSort2 == partDto.PartType
&& itm.DicItemSort1 == partDto.PartType2
&& itm.DicItemCode == partDto.PartType3);
if (partLargeTypeObj != null)
{
partDto.DisplaySN = partLargeTypeObj.DicItemSort7.TryToInt();
partDto.DisplayColumnName = partLargeTypeObj.DicItemName;
}
}
var filterParts = m100Dto.BillM100Parts.Where(itm => itm.DisplaySN != null).OrderBy(itm => itm.DisplaySN).ToList();
for (int i = 0; i < filterParts.Count; i++)
{
var filterPart = filterParts[i];
switch (i)
{
case 0:
m100Dto.PartCode1 = filterPart.PartCode;
break;
case 1:
m100Dto.PartCode2 = filterPart.PartCode;
break;
case 2:
m100Dto.PartCode3 = filterPart.PartCode;
break;
case 3:
m100Dto.PartCode4 = filterPart.PartCode;
break;
case 4:
m100Dto.PartCode5 = filterPart.PartCode;
break;
case 5:
m100Dto.PartCode6 = filterPart.PartCode;
break;
}
}
m100Dto.BillM100Parts = new List<BillM100PartDto>();
}
ret.PartDisplayColumnName = m100Parts.Where(itm => itm.DisplaySN != null).OrderBy(itm => itm.DisplaySN).Select(itm => itm.DisplayColumnName).JoinAsString(",");
ret.M100Dtos = m100Dtos;
ret.M100_TotalCount = await m100Query.CountAsync();
return ret;
}
/// <summary>
/// 填充M110主表横向零件字段
/// </summary>
/// <param name="m110Dtos"></param>
/// <returns></returns>
private async Task<List<BillM110Dto>> FillPartCodeField(List<BillM110Dto> m110Dtos)
{
//取零件大类配置
List<DicItem> partLargeTypeLst = await _dicItemRepository.GetListAsync(itm => itm.DicTypeCode == "零件大类");
partLargeTypeLst = partLargeTypeLst.OrderBy(itm => itm.DicItemSort2).ThenBy(itm => itm.DicItemSort1).ToList();
foreach (BillM110Dto m110Dto in m110Dtos) //遍历M110
{
foreach (var partDto in m110Dto.BillM110Parts) //遍历子件
{
//按产线、分组、零件大类 过滤
var partLargeTypeObj = partLargeTypeLst.FirstOrDefault(itm =>
itm.DicItemSort2 == partDto.PartType
&& itm.DicItemSort1 == partDto.PartType2
&& itm.DicItemCode == partDto.PartType3);
if (partLargeTypeObj != null)
{
partDto.DisplaySN = partLargeTypeObj.DicItemSort7.TryToInt();
partDto.DisplayColumnName = partLargeTypeObj.DicItemName;
}
}
var filterParts = m110Dto.BillM110Parts.Where(itm => itm.DisplaySN != null).OrderBy(itm => itm.DisplaySN).ToList();
for (int i = 0; i < filterParts.Count; i++)
{
var filterPart = filterParts[i];
switch (i)
{
case 0:
m110Dto.PartCode1 = filterPart.PartCode;
break;
case 1:
m110Dto.PartCode2 = filterPart.PartCode;
break;
case 2:
m110Dto.PartCode3 = filterPart.PartCode;
break;
case 3:
m110Dto.PartCode4 = filterPart.PartCode;
break;
case 4:
m110Dto.PartCode5 = filterPart.PartCode;
break;
case 5:
m110Dto.PartCode6 = filterPart.PartCode;
break;
}
}
m110Dto.BillM110Parts = new List<BillM110PartDto>();
}
return m110Dtos;
}
/// <summary> /// <summary>
/// 取单据包含的ERP总成列表 /// 取单据包含的ERP总成列表
/// </summary> /// </summary>
@ -889,19 +1123,21 @@ select * from
//} //}
/// <summary> /// <summary>
/// 打印左侧或右侧门板 /// 将M100转换成MenBanPackingList主子表
/// </summary> /// </summary>
/// <param name="input"></param> /// <param name="input"></param>
/// <param name="pageIdx"></param> /// <param name="pageIdx"></param>
/// <param name="maxBillNum"></param>
/// <param name="maxSN"></param> /// <param name="maxSN"></param>
/// <param name="printTime"></param>
/// <param name="billLst"></param> /// <param name="billLst"></param>
/// <param name="partLargeType"></param> /// <param name="reportSort">报表分类,对应DicItemSort4</param>
/// <param name="partLargeTypeLst">零件大类字典项</param>
/// <returns></returns> /// <returns></returns>
private MenBanPackingList DoMBPrint(MenBanPrintInputDto input, int pageIdx, double maxSN, List<BillM100> billLst, string reportSort, string[] partLargeType) private MenBanPackingList DoMBPrint(MenBanPrintInputDto input, int pageIdx, double maxSN, List<BillM100> billLst, string reportSort, List<DicItem> partLargeTypeLst)
{ {
const int _colNumberPerPage = 12; const int _colNumberPerPage = 12;
string[] partLargeType = partLargeTypeLst.Select(itm => itm.DicItemCode).ToArray(); //取零件大类
var partLargeTypeObj = partLargeTypeLst[0];
//取当前页内容 //取当前页内容
List<BillM100> curPageLst = billLst.Skip(pageIdx * _colNumberPerPage).Take(_colNumberPerPage).ToList(); List<BillM100> curPageLst = billLst.Skip(pageIdx * _colNumberPerPage).Take(_colNumberPerPage).ToList();
@ -912,8 +1148,10 @@ select * from
MenBanPackingList packingMain = new MenBanPackingList(); MenBanPackingList packingMain = new MenBanPackingList();
packingMain.SetId(GuidGenerator.Create()); packingMain.SetId(GuidGenerator.Create());
packingMain.BillNum = $"C{ymd}{serialNum}{reportSort}";
packingMain.VehicleModel = vmLst; packingMain.BillNum = $"{partLargeTypeObj.DicItemSort8}{ymd}{serialNum}{reportSort}"; //partLargeTypeObj.DicItemSort8包含C或T
packingMain.VehicleModel = partLargeTypeObj.DicItemSort6; //报表显示车型 //vmLst;
packingMain.BillSerialNum = serialNum; packingMain.BillSerialNum = serialNum;
packingMain.PrintDate = ServerHelper.CurrentDateTime; packingMain.PrintDate = ServerHelper.CurrentDateTime;
packingMain.ProductLine = billLst[0].ProductLine; packingMain.ProductLine = billLst[0].ProductLine;
@ -3021,119 +3259,18 @@ select min(SerialNumStr) from FisBillM100 a left join d on a.VIN=d.VIN
M100_M110_Result ret = new M100_M110_Result(); M100_M110_Result ret = new M100_M110_Result();
try try
{ {
var query = await _billM100Repository.GetQueryableAsync(); if (input.ProductLine.IsNullOrEmpty2())
var includeQry = query.Include(itm => itm.BillM100Parts);
var m100Query = includeQry.Where(itm => itm.IsReceiveM110 == false || itm.IsReceiveM110 == null);
if (input.SerialNumBegin != null)
{
m100Query = m100Query.Where(itm => itm.SerialNum >= input.SerialNumBegin);
}
if (input.SerialNumEnd != null)
{
m100Query = m100Query.Where(itm => itm.SerialNum <= input.SerialNumBegin);
}
if (input.HostSNBegin != null)
{
m100Query = m100Query.Where(itm => itm.HostSN >= input.HostSNBegin);
}
if (input.HostSNEnd != null)
{
m100Query = m100Query.Where(itm => itm.HostSN <= input.HostSNEnd);
}
if (!string.IsNullOrEmpty(input.KNRBegin))
{
m100Query = m100Query.Where(itm => itm.KNR.CompareTo(input.KNRBegin) >= 0);
}
if (!string.IsNullOrEmpty(input.KNREnd))
{
m100Query = m100Query.Where(itm => itm.KNR.CompareTo(input.KNREnd) <= 0);
}
if (!string.IsNullOrEmpty(input.VINBegin))
{
m100Query = m100Query.Where(itm => itm.VIN.CompareTo(input.VINBegin) >= 0);
}
if (!string.IsNullOrEmpty(input.VINEnd))
{
m100Query = m100Query.Where(itm => itm.VIN.CompareTo(input.VINEnd) <= 0);
}
if (input.AssemblyID != null)
{
m100Query = m100Query.Where(itm => itm.AssemblyID != null);
}
if (input.OnlineTimeBegin != null)
{
m100Query = m100Query.Where(itm => itm.OnlineTime >= input.OnlineTimeBegin);
}
if (input.OnlineTimeEnd != null)
{
m100Query = m100Query.Where(itm => itm.OnlineTime <= input.OnlineTimeEnd);
}
if (input.VehicleModelCode != null)
{
m100Query = m100Query.Where(itm => itm.VehicleModelCode == input.VehicleModelCode);
}
if (input.ProductLine != null)
{
m100Query = m100Query.Where(itm => itm.ProductLine == input.ProductLine);
}
if (input.Version != null)
{
m100Query = m100Query.Where(itm => itm.Version == input.Version);
}
if (input.ReceiveTimeBegin != null)
{
m100Query = m100Query.Where(itm => itm.ReceiveTime >= input.ReceiveTimeBegin);
}
if (input.ReceiveTimeEnd != null)
{
m100Query = m100Query.Where(itm => itm.ReceiveTime <= input.ReceiveTimeEnd);
}
//if (input.IsBillMaintenance == true) //M100单据信息维护模块使用
//{
// where += " and b.Operator is not null";
//}
if (input.CanNotPrint == true)
{
m100Query = m100Query.Where(itm => itm.CanNotPrint == true);
}
else if (input.CanNotPrint == false)
{
m100Query = m100Query.Where(itm => itm.CanNotPrint == false || itm.CanNotPrint == null);
}
if (input.ZHBBillStatus != null && input.ZHBBillStatus != ZHBBillStatusEnum.None)
{
if (input.ZHBBillStatus == ZHBBillStatusEnum.Print) //柱护板已打印
{
m100Query = m100Query.Where(itm => itm.PrintBillNum != "" && itm.PrintBillNum != null);
}
else if (input.ZHBBillStatus == ZHBBillStatusEnum.NotPrint) //柱护板未打印
{
m100Query = m100Query.Where(itm => itm.PrintBillNum == "" || itm.PrintBillNum == null);
}
}
else if (input.BillStatus != null && input.BillStatus != BillStatusEnum.None)
{ {
m100Query = m100Query.Where(itm => itm.BillStatus == input.BillStatus); throw new UserFriendlyException("生产线参数不能为空");
} }
else //填充M100,字段中文名称
{ ret = await QueryByConditionAsync2(input);
//m100Query = m100Query.Where(itm => itm.BillStatus == BillStatusEnum.Match || itm.BillStatus == BillStatusEnum.Publish); //单据状态是已匹配、已打印 //填充M110
}
if (input.IsNeedReplenishPrint == true) //只显示需要补打的记录
{
m100Query = m100Query.Where(itm => itm.NeedReplenishPrint == 1);
}
//M100
var m100Lst = m100Query.OrderBy(itm => itm.SerialNumStr).Skip(input.SkipCount).Take(input.MaxResultCount).OrderByDescending(itm => itm.SerialNumStr).ToList();
ret.M100_TotalCount = await m100Query.CountAsync();
ret.BillM100s = m100Lst;
//M110
string serialNumStr = await _billM110_Repository.Where(itm => itm.ProductLine == input.ProductLine).MaxAsync(itm => itm.SerialNumStr); string serialNumStr = await _billM110_Repository.Where(itm => itm.ProductLine == input.ProductLine).MaxAsync(itm => itm.SerialNumStr);
var m110_Lst = await _billM110_Repository.GetListAsync(itm => itm.SerialNumStr == serialNumStr, true); var m110_Lst = await _billM110_Repository.GetListAsync(itm => itm.SerialNumStr == serialNumStr, true);
ret.Bill_M110s = m110_Lst; List<BillM110Dto> m110_Dtos = ObjectMapper.Map<List<BillM110>, List<BillM110Dto>>(m110_Lst);
m110_Dtos = await FillPartCodeField(m110_Dtos);
ret.M110_Dtos = m110_Dtos;
return ret; return ret;
} }
@ -3145,9 +3282,6 @@ select min(SerialNumStr) from FisBillM100 a left join d on a.VIN=d.VIN
} }
} }
/// <summary> /// <summary>
/// 按主键获取唯一实体 /// 按主键获取唯一实体
/// </summary> /// </summary>
@ -3296,19 +3430,53 @@ select min(SerialNumStr) from FisBillM100 a left join d on a.VIN=d.VIN
{ {
input.SkipCount = 0; input.SkipCount = 0;
input.MaxResultCount = 50000; input.MaxResultCount = 50000;
PagedResultDto<ResultBillM100Dto> query = new PagedResultDto<ResultBillM100Dto>(); //PagedResultDto<ResultBillM100Dto> query = new PagedResultDto<ResultBillM100Dto>();
if (!string.IsNullOrEmpty(input.GroupName)) //if (!string.IsNullOrEmpty(input.GroupName))
{ //{
query = await QueryZHBByConditionAsync(input, (PagedAndSortedBase)input); // query = await QueryZHBByConditionAsync(input, (PagedAndSortedBase)input);
} //}
else //else
//{
// query = await QueryByConditionAsync(input, (PagedAndSortedBase)input);
//}
M100_M110_Result result = await QueryByConditionAsync2(input);
string[] fieldNames = result.PartDisplayColumnName.Split(",");
for (int i = 0; i < fieldNames.Length; i++)
{ {
query = await QueryByConditionAsync(input, (PagedAndSortedBase)input); switch (i)
{
case 0:
ExporterHeaderAttribute attr = typeof(BillM100Dto).GetProperty("PartCode1").GetCustomAttribute(typeof(ExporterHeaderAttribute)) as ExporterHeaderAttribute;
attr.DisplayName = fieldNames[i];
break;
case 1:
attr = typeof(BillM100Dto).GetProperty("PartCode2").GetCustomAttribute(typeof(ExporterHeaderAttribute)) as ExporterHeaderAttribute;
attr.DisplayName = fieldNames[i];
break;
case 2:
attr = typeof(BillM100Dto).GetProperty("PartCode3").GetCustomAttribute(typeof(ExporterHeaderAttribute)) as ExporterHeaderAttribute;
attr.DisplayName = fieldNames[i];
break;
case 3:
attr = typeof(BillM100Dto).GetProperty("PartCode4").GetCustomAttribute(typeof(ExporterHeaderAttribute)) as ExporterHeaderAttribute;
attr.DisplayName = fieldNames[i];
break;
case 4:
attr = typeof(BillM100Dto).GetProperty("PartCode5").GetCustomAttribute(typeof(ExporterHeaderAttribute)) as ExporterHeaderAttribute;
attr.DisplayName = fieldNames[i];
break;
case 5:
attr = typeof(BillM100Dto).GetProperty("PartCode6").GetCustomAttribute(typeof(ExporterHeaderAttribute)) as ExporterHeaderAttribute;
attr.DisplayName = fieldNames[i];
break;
}
} }
List<ResultBillM100Dto> items = query.Items.ToList();
//List<ResultBillM100Dto> items = query.Items.ToList();
//将实体列表转换成excel文件流 //将实体列表转换成excel文件流
IExporter exporter = new ExcelExporter(); IExporter exporter = new ExcelExporter();
byte[] byteArr = await exporter.ExportAsByteArray<ResultBillM100Dto>(items); byte[] byteArr = await exporter.ExportAsByteArray<BillM100Dto>(result.M100Dtos);
byteArr.ShouldNotBeNull(); byteArr.ShouldNotBeNull();
//将excel文件流保存到服务器端文件系统 //将excel文件流保存到服务器端文件系统
string fileName = string.Format("单据M100_{0}.xlsx", Guid.NewGuid().ToString()); string fileName = string.Format("单据M100_{0}.xlsx", Guid.NewGuid().ToString());
@ -3414,6 +3582,10 @@ select min(SerialNumStr) from FisBillM100 a left join d on a.VIN=d.VIN
return ret; return ret;
} }
} }
List<DicItem> partLargeTypeLst = await _dicItemRepository.GetListAsync(itm => itm.DicTypeCode == "零件大类");
partLargeTypeLst = partLargeTypeLst.OrderBy(itm => itm.DicItemSort2).ThenBy(itm => itm.DicItemSort1).ToList();
ListResultDto<BillM100> tempLst = await GetMBReportDetailList(input, true); //----------------------------- ListResultDto<BillM100> tempLst = await GetMBReportDetailList(input, true); //-----------------------------
List<BillM100> billLst = tempLst.Item; List<BillM100> billLst = tempLst.Item;
if (tempLst.Status == false) if (tempLst.Status == false)
@ -3428,14 +3600,13 @@ select min(SerialNumStr) from FisBillM100 a left join d on a.VIN=d.VIN
int pageCnt = (int)Math.Ceiling(billLst.Count / 12.0); //每页打印12列,取打印页数 int pageCnt = (int)Math.Ceiling(billLst.Count / 12.0); //每页打印12列,取打印页数
//double maxBillNum = 0; //double maxBillNum = 0;
//DateTime printTime = ServerHelper.CurrentDateTime; //DateTime printTime = ServerHelper.CurrentDateTime;
var reportSortDic = _dicItemRepository //过滤产线(DicItemSort2),按“报表分类”(DicItemSort4)分组,分组后按DicItemSort7排序
.Where(itm => itm.DicTypeCode == "零件大类" && itm.DicItemSort2 == input.ProductLine) Dictionary<string, List<DicItem>> reportSortDic = partLargeTypeLst
.ToList() .Where(itm => itm.DicItemSort2 == input.ProductLine && string.IsNullOrEmpty(itm.DicItemSort4) == false)
.GroupBy(itm => itm.DicItemSort4) .GroupBy(itm => itm.DicItemSort4)
.ToDictionary(itm => itm.Key, it2 => it2.Select(itm => itm.DicItemCode).ToArray()); .ToDictionary(itm => itm.Key, it2 => it2.OrderBy(itm => itm.DicItemSort7).ToList());
for (int pageIdx = 0; pageIdx < pageCnt; pageIdx++) for (int pageIdx = 0; pageIdx < pageCnt; pageIdx++)
{ {
@ -3475,12 +3646,12 @@ select min(SerialNumStr) from FisBillM100 a left join d on a.VIN=d.VIN
billObj.NeedReplenishPrint = 0; //不需要补打 billObj.NeedReplenishPrint = 0; //不需要补打
await _billM100Repository.UpdateAsync(billObj, true); await _billM100Repository.UpdateAsync(billObj, true);
} }
else if (billObj.BillStatus == BillStatusEnum.NotMatch) //else if (billObj.BillStatus == BillStatusEnum.NotMatch)
{ //{
//billObj.PrintTime = ServerHelper.CurrentDateTime; // //billObj.PrintTime = ServerHelper.CurrentDateTime;
billObj.NeedReplenishPrint = 1; //需要补打 // billObj.NeedReplenishPrint = 1; //需要补打
await _billM100Repository.UpdateAsync(billObj, true); // await _billM100Repository.UpdateAsync(billObj, true);
} //}
} }
_logger.LogWarning($"SaveMenBanReport更新M100的门板打印标志 - {sw.ElapsedMilliseconds}毫秒"); _logger.LogWarning($"SaveMenBanReport更新M100的门板打印标志 - {sw.ElapsedMilliseconds}毫秒");
@ -5226,16 +5397,20 @@ select min(SerialNumStr) from FisBillM100 a left join d on a.VIN=d.VIN
public class M100_M110_Result public class M100_M110_Result
{ {
public List<BillM100> BillM100s { get; set; } public List<BillM100Dto> M100Dtos { get; set; }
public List<BillM110> Bill_M110s { get; set; } public List<BillM110Dto> M110_Dtos { get; set; }
public long M100_TotalCount { get; set; } = 0;
public int M100_TotalCount { get; set; } /// <summary>
/// 零件在主表横向排列显示的列名
/// </summary>
public string PartDisplayColumnName { get; set; } = "";
public M100_M110_Result() public M100_M110_Result()
{ {
BillM100s = new List<BillM100>(); M100Dtos = new List<BillM100Dto>();
Bill_M110s = new List<BillM110>(); M110_Dtos = new List<BillM110Dto>();
} }
} }
} }

860
Modules/新版JIT或JIS系统服务端/src/WY.NewJit.Application/MsgCheck/BillM110s/BillM110AppService.cs

@ -1998,83 +1998,83 @@ select * from
/// </summary> /// </summary>
/// <param name="input"></param> /// <param name="input"></param>
/// <returns>断号时Item不为空</returns> /// <returns>断号时Item不为空</returns>
[UnitOfWork(false)] //[UnitOfWork(false)]
[HttpPost] //[HttpPost]
[Route("check-mb-hostsn-break-num")] //[Route("check-mb-hostsn-break-num")]
public virtual async Task<ListResultDto<string>> CheckMBHostSNBreakNum(MenBanPrintInputDto input) //public virtual async Task<ListResultDto<string>> CheckMBHostSNBreakNum(MenBanPrintInputDto input)
{ //{
List<string> retLst = new List<string>(); // List<string> retLst = new List<string>();
try // try
{ // {
int lastNum = await GetMenBanLastPrintNum(input); //从M110中取当前产线、已经打印的最大大众顺序号 // int lastNum = await GetMenBanLastPrintNum(input); //从M110中取当前产线、已经打印的最大大众顺序号
if (lastNum > 0) // if (lastNum > 0)
{ // {
if ((lastNum % 10000) == 1999) // if ((lastNum % 10000) == 1999)
{ // {
if ((input.BeginHostSN % 10000) != 1) // if ((input.BeginHostSN % 10000) != 1)
{ // {
string msg = $"单据之间断号,上次打印的最后大众顺序号为【{lastNum}】,与本次打印开始号【{input.BeginHostSN}】中间存在断号!"; // string msg = $"单据之间断号,上次打印的最后大众顺序号为【{lastNum}】,与本次打印开始号【{input.BeginHostSN}】中间存在断号!";
retLst.Add(msg); // retLst.Add(msg);
_logger.LogDebug(msg); // _logger.LogDebug(msg);
} // }
} // }
else // else
{ // {
if (lastNum + 1 != input.BeginHostSN) // if (lastNum + 1 != input.BeginHostSN)
{ // {
string msg = $"单据之间断号,上次打印的最后大众顺序号为【{lastNum}】,与本次打印开始号【{input.BeginHostSN}】中间存在断号!"; // string msg = $"单据之间断号,上次打印的最后大众顺序号为【{lastNum}】,与本次打印开始号【{input.BeginHostSN}】中间存在断号!";
retLst.Add(msg); // retLst.Add(msg);
_logger.LogDebug(msg); // _logger.LogDebug(msg);
} // }
} // }
} // }
ListResultDto<BillM110> tempLst = await GetMBReportDetailList(input, false); // ListResultDto<BillM110> tempLst = await GetMBReportDetailList(input, false);
List<BillM110> billLst = tempLst.Item; // List<BillM110> billLst = tempLst.Item;
if (billLst.Count < 2) // if (billLst.Count < 2)
{ // {
return new ListResultDto<string>(retLst); // return new ListResultDto<string>(retLst);
} // }
for (int i = 1; i < billLst.Count; i++) // for (int i = 1; i < billLst.Count; i++)
{ // {
BillM110 priorObj = billLst[i - 1]; // BillM110 priorObj = billLst[i - 1];
BillM110 curObj = billLst[i]; // BillM110 curObj = billLst[i];
int priorHostSN = (int)billLst[i - 1].HostSN; // int priorHostSN = (int)billLst[i - 1].HostSN;
int curHostSN = (int)billLst[i].HostSN; // int curHostSN = (int)billLst[i].HostSN;
if (curHostSN > priorHostSN) //0005、0006 // if (curHostSN > priorHostSN) //0005、0006
{ // {
if (curHostSN > priorHostSN + 1) //0005、0008时,补号 0006、0007 // if (curHostSN > priorHostSN + 1) //0005、0008时,补号 0006、0007
{ // {
retLst.Add($"大众顺序号{priorObj.HostSN}与{curObj.HostSN}之间存在断号情况!"); // retLst.Add($"大众顺序号{priorObj.HostSN}与{curObj.HostSN}之间存在断号情况!");
} // }
} // }
else if (curHostSN < priorHostSN) //1999到0001的情况 // else if (curHostSN < priorHostSN) //1999到0001的情况
{ // {
if (curHostSN + _hostSNMaxVal > priorHostSN + 1) //0005、0008时,补号 0006、0007 // if (curHostSN + _hostSNMaxVal > priorHostSN + 1) //0005、0008时,补号 0006、0007
{ // {
retLst.Add($"大众顺序号{priorObj.HostSN}与{curObj.HostSN}之间存在断号情况!"); // retLst.Add($"大众顺序号{priorObj.HostSN}与{curObj.HostSN}之间存在断号情况!");
} // }
} // }
} // }
if (retLst.Count == 0 && billLst.Count < input.EndHostSN - input.BeginHostSN + 1) // if (retLst.Count == 0 && billLst.Count < input.EndHostSN - input.BeginHostSN + 1)
{ // {
retLst.Add($"本车装箱单不满架!"); // retLst.Add($"本车装箱单不满架!");
} // }
return new ListResultDto<string>(retLst); // return new ListResultDto<string>(retLst);
} // }
catch (Exception ex) // catch (Exception ex)
{ // {
ListResultDto<string> ret = new ListResultDto<string>(); // ListResultDto<string> ret = new ListResultDto<string>();
ret.Status = false; // ret.Status = false;
ret.Message = _errorMessagePrefix + "打印前检查大众顺序号是否断号ChecMBkHostSNBreakNum 执行出错:" + ex.Message; // ret.Message = _errorMessagePrefix + "打印前检查大众顺序号是否断号ChecMBkHostSNBreakNum 执行出错:" + ex.Message;
_logger.LogError(ret.Message); // _logger.LogError(ret.Message);
return ret; // return ret;
} // }
} //}
/// <summary> /// <summary>
/// 打印前检查大众顺序号是否断号 /// 打印前检查大众顺序号是否断号
@ -2154,72 +2154,72 @@ select * from
/// <param name="isZhuHuBan">柱护板是1 门板是非1</param> /// <param name="isZhuHuBan">柱护板是1 门板是非1</param>
/// <param name="groupName">柱护板分组类型</param> /// <param name="groupName">柱护板分组类型</param>
/// <returns>起始大众顺序号</returns> /// <returns>起始大众顺序号</returns>
[UnitOfWork] // [UnitOfWork]
[HttpGet] // [HttpGet]
[Route("get-print-start-hostsn2")] // [Route("get-print-start-hostsn2")]
public virtual async Task<ObjectResultDto<int?>> GetPrintStartHostSN2(string productLine, string isZhuHuBan,string GroupName=null) // public virtual async Task<ObjectResultDto<int?>> GetPrintStartHostSN2(string productLine, string isZhuHuBan,string GroupName=null)
{ // {
int? beginHostSN = null; // int? beginHostSN = null;
try // try
{ // {
if (isZhuHuBan == "1") //是柱护板, 根据PrintBillNum非空判断是柱护板 // if (isZhuHuBan == "1") //是柱护板, 根据PrintBillNum非空判断是柱护板
{ // {
//string minSNStr = await _billM110Repository.Where(itm => // //string minSNStr = await _billM110Repository.Where(itm =>
// itm.ProductLine == productLine //指定生产线 // // itm.ProductLine == productLine //指定生产线
// && itm.CanNotPrint != true //能打印 // // && itm.CanNotPrint != true //能打印
// && string.IsNullOrEmpty(itm.PrintBillNum) == true //等于 未打印 // // && string.IsNullOrEmpty(itm.PrintBillNum) == true //等于 未打印
// && itm.NeedReplenishPrint != 1 //排除补打 // // && itm.NeedReplenishPrint != 1 //排除补打
// ).MinAsync(itm => itm.SerialNumStr); // // ).MinAsync(itm => itm.SerialNumStr);
string sql = @" // string sql = @"
with d as //with d as
( //(
select *from [dbo].[FisZHBPrintStatus] where groupName='{1}' // select *from [dbo].[FisZHBPrintStatus] where groupName='{1}'
) //)
select min(SerialNumStr) from FisBillM110 a left join d on a.VIN=d.VIN
where ProductLine='{0}' and (CanNotPrint !=1 or CanNotPrint is null) and (PrintBillNum is null or PrintBillNum ='') and (NeedReplenishPrint!=1 or NeedReplenishPrint is null) and d.BillStatus is null";
sql = string.Format(sql, productLine, GroupName);
var minSNStr = await _newJitDapperRepository.GetSingleBySqlAsync<string>(sql);
beginHostSN = await _billM110Repository.Where(itm =>
itm.ProductLine == productLine //指定生产线
&& itm.CanNotPrint != true //能打印
&& string.IsNullOrEmpty(itm.PrintBillNum) == true //等于 未打印
&& itm.SerialNumStr == minSNStr
).MinAsync(itm => itm.HostSN);
}
else //---------------门板-----------------------------------------------------------------------------------
{
string minSNStr2 = await _billM110Repository.Where(itm =>
itm.ProductLine == productLine //指定生产线
&& itm.CanNotPrint != true //能打印
//&& itm.BillStatus == BillStatusEnum.Match //等于 未打印(和M110上线信息匹配)
&& itm.BillStatus != BillStatusEnum.Publish //未知总成也显示在装箱单
&& itm.NeedReplenishPrint != 1 //排除补打
).MinAsync(itm => itm.SerialNumStr);
beginHostSN = await _billM110Repository.Where(itm => //select min(SerialNumStr) from FisBillM110 a left join d on a.VIN=d.VIN
itm.ProductLine == productLine //指定生产线
&& itm.CanNotPrint != true //能打印 // where ProductLine='{0}' and (CanNotPrint !=1 or CanNotPrint is null) and (PrintBillNum is null or PrintBillNum ='') and (NeedReplenishPrint!=1 or NeedReplenishPrint is null) and d.BillStatus is null";
//&& itm.BillStatus == BillStatusEnum.Match //等于 未打印
&& itm.BillStatus != BillStatusEnum.Publish //未知总成也显示在装箱单 // sql = string.Format(sql, productLine, GroupName);
&& itm.SerialNumStr == minSNStr2 // var minSNStr = await _newJitDapperRepository.GetSingleBySqlAsync<string>(sql);
).MinAsync(itm => itm.HostSN);
}
return new ObjectResultDto<int?>(beginHostSN); // beginHostSN = await _billM110Repository.Where(itm =>
} // itm.ProductLine == productLine //指定生产线
catch (Exception ex) // && itm.CanNotPrint != true //能打印
{ // && string.IsNullOrEmpty(itm.PrintBillNum) == true //等于 未打印
ObjectResultDto<int?> ret = new ObjectResultDto<int?>(); // && itm.SerialNumStr == minSNStr
ret.Status = false; // ).MinAsync(itm => itm.HostSN);
ret.Message = _errorMessagePrefix + "GetPrintStartHostSN2 执行出错:" + ex.Message; // }
_logger.LogError(ret.Message); // else //---------------门板-----------------------------------------------------------------------------------
return ret; // {
} // string minSNStr2 = await _billM110Repository.Where(itm =>
} // itm.ProductLine == productLine //指定生产线
// && itm.CanNotPrint != true //能打印
// //&& itm.BillStatus == BillStatusEnum.Match //等于 未打印(和M110上线信息匹配)
// && itm.BillStatus != BillStatusEnum.Publish //未知总成也显示在装箱单
// && itm.NeedReplenishPrint != 1 //排除补打
// ).MinAsync(itm => itm.SerialNumStr);
// beginHostSN = await _billM110Repository.Where(itm =>
// itm.ProductLine == productLine //指定生产线
// && itm.CanNotPrint != true //能打印
// //&& itm.BillStatus == BillStatusEnum.Match //等于 未打印
// && itm.BillStatus != BillStatusEnum.Publish //未知总成也显示在装箱单
// && itm.SerialNumStr == minSNStr2
// ).MinAsync(itm => itm.HostSN);
// }
// return new ObjectResultDto<int?>(beginHostSN);
// }
// catch (Exception ex)
// {
// ObjectResultDto<int?> ret = new ObjectResultDto<int?>();
// ret.Status = false;
// ret.Message = _errorMessagePrefix + "GetPrintStartHostSN2 执行出错:" + ex.Message;
// _logger.LogError(ret.Message);
// return ret;
// }
// }
/// <summary> /// <summary>
/// 打印门板装箱单 /// 打印门板装箱单
@ -3209,334 +3209,334 @@ select min(SerialNumStr) from FisBillM110 a left join d on a.VIN=d.VIN
/// </summary> /// </summary>
/// <param name="input">生产线编号列表</param> /// <param name="input">生产线编号列表</param>
/// <returns>生产线超时情况</returns> /// <returns>生产线超时情况</returns>
[UnitOfWork] //[UnitOfWork]
[HttpPost] //[HttpPost]
[Route("product-line-timeout-remind")] //[Route("product-line-timeout-remind")]
public virtual async Task<ListResultDto<TimeOutRemindResultDto>> ProductLineTimeoutRemind(TimeOutRemindInputDto input) //public virtual async Task<ListResultDto<TimeOutRemindResultDto>> ProductLineTimeoutRemind(TimeOutRemindInputDto input)
{ //{
List<TimeOutRemindResultDto> retLst = new List<TimeOutRemindResultDto>(); // List<TimeOutRemindResultDto> retLst = new List<TimeOutRemindResultDto>();
foreach (string plStr in input.ProductLineList) // foreach (string plStr in input.ProductLineList)
{ // {
TimeOutRemindResultDto retObj = new TimeOutRemindResultDto(); // TimeOutRemindResultDto retObj = new TimeOutRemindResultDto();
retObj.ProductLine = plStr; // retObj.ProductLine = plStr;
retObj.ConfigMinutes = _configuration[$"ConfigDic:ProductLineTimeoutRemind:{plStr}"].TryToInt() ?? 30; // retObj.ConfigMinutes = _configuration[$"ConfigDic:ProductLineTimeoutRemind:{plStr}"].TryToInt() ?? 30;
string maxSNStr = await _billM110Repository.Where(itm => itm.ProductLine == plStr).MaxAsync(itm => itm.SerialNumStr); // string maxSNStr = await _billM110Repository.Where(itm => itm.ProductLine == plStr).MaxAsync(itm => itm.SerialNumStr);
BillM110 lastBill = await _billM110Repository.FirstOrDefaultAsync(itm => itm.ProductLine == plStr && itm.SerialNumStr == maxSNStr); // BillM110 lastBill = await _billM110Repository.FirstOrDefaultAsync(itm => itm.ProductLine == plStr && itm.SerialNumStr == maxSNStr);
if (lastBill != null) // if (lastBill != null)
{ // {
retObj.LastReceiveTime = lastBill.ReceiveTime ?? ServerHelper.CurrentDateTime; // retObj.LastReceiveTime = lastBill.ReceiveTime ?? ServerHelper.CurrentDateTime;
retObj.TimeoutMinutes = MinuteDiff(retObj.LastReceiveTime, ServerHelper.CurrentDateTime); // retObj.TimeoutMinutes = MinuteDiff(retObj.LastReceiveTime, ServerHelper.CurrentDateTime);
} // }
retLst.Add(retObj); // retLst.Add(retObj);
} // }
return new ListResultDto<TimeOutRemindResultDto>(retLst); // return new ListResultDto<TimeOutRemindResultDto>(retLst);
} //}
private int MinuteDiff(DateTime beginTime, DateTime endTime) //private int MinuteDiff(DateTime beginTime, DateTime endTime)
{ //{
TimeSpan beginSpan = new TimeSpan(beginTime.Ticks); // TimeSpan beginSpan = new TimeSpan(beginTime.Ticks);
TimeSpan endSpan = new TimeSpan(endTime.Ticks); // TimeSpan endSpan = new TimeSpan(endTime.Ticks);
TimeSpan diffSpan = endSpan.Subtract(beginSpan).Duration(); // TimeSpan diffSpan = endSpan.Subtract(beginSpan).Duration();
return (int)(diffSpan.TotalMinutes); // return (int)(diffSpan.TotalMinutes);
} //}
#endregion #endregion
#region 保存报表、加载打印报表分离 #region 保存报表、加载打印报表分离
//[UnitOfWork] //[UnitOfWork]
[UnitOfWork(IsDisabled = true)] //[UnitOfWork(IsDisabled = true)]
[HttpPost] //[HttpPost]
[Route("save-menban-report")] //[Route("save-menban-report")]
public virtual async Task<ObjectResultDto<List<Guid>>> SaveMenBanReport(MenBanPrintInputDto input) //public virtual async Task<ObjectResultDto<List<Guid>>> SaveMenBanReport(MenBanPrintInputDto input)
{ //{
Stopwatch sw = new Stopwatch(); // Stopwatch sw = new Stopwatch();
_logger.LogDebug(_errorMessagePrefix + "SaveMenBanReport 进入"); // _logger.LogDebug(_errorMessagePrefix + "SaveMenBanReport 进入");
List<Guid> retLst = new List<Guid>(); // List<Guid> retLst = new List<Guid>();
ObjectResultDto<List<Guid>> ret = new ObjectResultDto<List<Guid>>(); // ObjectResultDto<List<Guid>> ret = new ObjectResultDto<List<Guid>>();
ret.Status = false; // ret.Status = false;
using (var uow = _unitOfWorkManager.Begin(requiresNew: true, isTransactional: true, isolationLevel: System.Data.IsolationLevel.Unspecified)) // using (var uow = _unitOfWorkManager.Begin(requiresNew: true, isTransactional: true, isolationLevel: System.Data.IsolationLevel.Unspecified))
{ // {
try // try
{ // {
List<MenBanPackingList> reportMainLst = new List<MenBanPackingList>(); // List<MenBanPackingList> reportMainLst = new List<MenBanPackingList>();
if (input.PrintType == PrintTypeEnum.) // if (input.PrintType == PrintTypeEnum.正常打印)
{ // {
if (input.BeginHostSN != 0 && input.EndHostSN != 0) // if (input.BeginHostSN != 0 && input.EndHostSN != 0)
{ // {
if (input.BeginHostSN > input.EndHostSN) // if (input.BeginHostSN > input.EndHostSN)
{ // {
ret.Message = "止大众顺序号必须大于等于起大众顺序号!"; // ret.Message = "止大众顺序号必须大于等于起大众顺序号!";
ret.Status = false; // ret.Status = false;
return ret; // return ret;
} // }
} // }
ListResultDto<BillM110> tempLst = await GetMBReportDetailList(input, true); //----------------------------- // ListResultDto<BillM110> tempLst = await GetMBReportDetailList(input, true); //-----------------------------
List<BillM110> billLst = tempLst.Item; // List<BillM110> billLst = tempLst.Item;
if (tempLst.Status == false) // if (tempLst.Status == false)
{ // {
ret.Message = tempLst.Message; // ret.Message = tempLst.Message;
ret.Status = false; // ret.Status = false;
return ret; // return ret;
} // }
_logger.LogWarning($"SaveMenBanReport读取数据 - {sw.ElapsedMilliseconds}毫秒"); // _logger.LogWarning($"SaveMenBanReport读取数据 - {sw.ElapsedMilliseconds}毫秒");
int pageCnt = (int)Math.Ceiling(billLst.Count / 12.0); //每页打印12列,取打印页数 // int pageCnt = (int)Math.Ceiling(billLst.Count / 12.0); //每页打印12列,取打印页数
//double maxBillNum = 0; // //double maxBillNum = 0;
//DateTime printTime = ServerHelper.CurrentDateTime; // //DateTime printTime = ServerHelper.CurrentDateTime;
var reportSortDic = _dicItemRepository // var reportSortDic = _dicItemRepository
.Where(itm => itm.DicTypeCode == "零件大类" && itm.DicItemSort2 == input.ProductLine) // .Where(itm => itm.DicTypeCode == "零件大类" && itm.DicItemSort2 == input.ProductLine)
.ToList() // .ToList()
.GroupBy(itm => itm.DicItemSort4) // .GroupBy(itm => itm.DicItemSort4)
.ToDictionary(itm => itm.Key, it2 => it2.Select(itm => itm.DicItemCode).ToArray()); // .ToDictionary(itm => itm.Key, it2 => it2.Select(itm => itm.DicItemCode).ToArray());
for (int pageIdx = 0; pageIdx < pageCnt; pageIdx++) // for (int pageIdx = 0; pageIdx < pageCnt; pageIdx++)
{ // {
foreach (var reportSortItem in reportSortDic) // foreach (var reportSortItem in reportSortDic)
{ // {
//生成顺序号:按生产线分组,取当前生产线的最大流水号:001至999往复循环 // //生成顺序号:按生产线分组,取当前生产线的最大流水号:001至999往复循环
double maxSN = await _lineSNDomianService.GetMaxSN(ProductTypeEnum., input.ProductLine, string.Empty); // double maxSN = await _lineSNDomianService.GetMaxSN(ProductTypeEnum.门板, input.ProductLine, string.Empty);
MenBanPackingList packingObj = DoMBPrint(input, pageIdx, maxSN, billLst, reportSortItem.Key, reportSortItem.Value); // MenBanPackingList packingObj = DoMBPrint(input, pageIdx, maxSN, billLst, reportSortItem.Key, reportSortItem.Value);
reportMainLst.Add(packingObj); // reportMainLst.Add(packingObj);
} // }
} // }
_logger.LogWarning($"SaveMenBanReport转换数据 - {sw.ElapsedMilliseconds}毫秒"); // _logger.LogWarning($"SaveMenBanReport转换数据 - {sw.ElapsedMilliseconds}毫秒");
//插入门板打印记录表 // //插入门板打印记录表
await _menBanPackingListRepository.InsertManyAsync(reportMainLst, true); // await _menBanPackingListRepository.InsertManyAsync(reportMainLst, true);
retLst.AddRange(reportMainLst.Select(itm => itm.Id)); // retLst.AddRange(reportMainLst.Select(itm => itm.Id));
_logger.LogWarning($"SaveMenBanReport插入门板打印记录表 - {sw.ElapsedMilliseconds}毫秒"); // _logger.LogWarning($"SaveMenBanReport插入门板打印记录表 - {sw.ElapsedMilliseconds}毫秒");
//调用派格版库存接口 // //调用派格版库存接口
//await SaveMiddleTable_MB(reportMainLst); // //await SaveMiddleTable_MB(reportMainLst);
_logger.LogWarning($"SaveMenBanReport插入中间表 - {sw.ElapsedMilliseconds}毫秒"); // _logger.LogWarning($"SaveMenBanReport插入中间表 - {sw.ElapsedMilliseconds}毫秒");
//更新M110的门板打印标志:BillStatus=3 // //更新M110的门板打印标志:BillStatus=3
foreach (BillM110 billObj in billLst) // foreach (BillM110 billObj in billLst)
{ // {
if (billObj.BillStatus == BillStatusEnum.Match) // if (billObj.BillStatus == BillStatusEnum.Match)
{ // {
billObj.SetBillStatus(BillStatusEnum.Publish); // billObj.SetBillStatus(BillStatusEnum.Publish);
billObj.PrintTime = ServerHelper.CurrentDateTime; // billObj.PrintTime = ServerHelper.CurrentDateTime;
billObj.NeedReplenishPrint = 0; //不需要补打 // billObj.NeedReplenishPrint = 0; //不需要补打
await _billM110Repository.UpdateAsync(billObj, true); // await _billM110Repository.UpdateAsync(billObj, true);
} // }
else if (billObj.BillStatus == BillStatusEnum.NotMatch) // else if (billObj.BillStatus == BillStatusEnum.NotMatch)
{ // {
//billObj.PrintTime = ServerHelper.CurrentDateTime; // //billObj.PrintTime = ServerHelper.CurrentDateTime;
billObj.NeedReplenishPrint = 1; //需要补打 // billObj.NeedReplenishPrint = 1; //需要补打
await _billM110Repository.UpdateAsync(billObj, true); // await _billM110Repository.UpdateAsync(billObj, true);
} // }
} // }
_logger.LogWarning($"SaveMenBanReport更新M110的门板打印标志 - {sw.ElapsedMilliseconds}毫秒"); // _logger.LogWarning($"SaveMenBanReport更新M110的门板打印标志 - {sw.ElapsedMilliseconds}毫秒");
} // }
//else if (input.PrintType == PrintTypeEnum.重新打印) //和正常打印单据完全一样,可以打印部分单据 // //else if (input.PrintType == PrintTypeEnum.重新打印) //和正常打印单据完全一样,可以打印部分单据
//{ // //{
// throw new BusinessException("请调用LoadMenBanReport方法!"); // // throw new BusinessException("请调用LoadMenBanReport方法!");
//} // //}
//else if (input.PrintType == PrintTypeEnum.补打) // //else if (input.PrintType == PrintTypeEnum.补打)
//{ // //{
// List<BillM110> billLst = _billM110Repository.Where(itm => input.M110IdList.Contains(itm.Id)).OrderBy(itm => itm.SerialNumStr).ToList(); // // List<BillM110> billLst = _billM110Repository.Where(itm => input.M110IdList.Contains(itm.Id)).OrderBy(itm => itm.SerialNumStr).ToList();
// if (billLst.Count == 0) // // if (billLst.Count == 0)
// { // // {
// ret.Message = "没有补打的单据,请先选择要补打的单据!"; // // ret.Message = "没有补打的单据,请先选择要补打的单据!";
// ret.Status = false; // // ret.Status = false;
// return ret; // // return ret;
// } // // }
// int pageCnt = (int)Math.Ceiling(billLst.Count / 12.0); //每页打印12列,取打印页数 // // int pageCnt = (int)Math.Ceiling(billLst.Count / 12.0); //每页打印12列,取打印页数
// double maxBillNum = 0; // // double maxBillNum = 0;
// DateTime printTime = ServerHelper.CurrentDateTime; // // DateTime printTime = ServerHelper.CurrentDateTime;
// for (int pageIdx = 0; pageIdx < pageCnt; pageIdx++) // // for (int pageIdx = 0; pageIdx < pageCnt; pageIdx++)
// { // // {
// //取右上角顺序号:按生产线分组,取当前生产线的最大流水号:01至99循环,例如01左、01右 // // //取右上角顺序号:按生产线分组,取当前生产线的最大流水号:01至99循环,例如01左、01右
// double maxSN = 0; // await _lineSNDomianService.GetMaxSN(ProductTypeEnum.门板, input.ProductLine, string.Empty); // // double maxSN = 0; // await _lineSNDomianService.GetMaxSN(ProductTypeEnum.门板, input.ProductLine, string.Empty);
// // 先打印两张:左后左前,再打印两张:右后右前 // // // 先打印两张:左后左前,再打印两张:右后右前
// List<MenBanPackingList> leftLst = DoMBPrint(input, pageIdx, ref maxBillNum, maxSN, printTime, billLst, "左"); // // List<MenBanPackingList> leftLst = DoMBPrint(input, pageIdx, ref maxBillNum, maxSN, printTime, billLst, "左");
// List<MenBanPackingList> rightLst = DoMBPrint(input, pageIdx, ref maxBillNum, maxSN, printTime, billLst, "右"); // // List<MenBanPackingList> rightLst = DoMBPrint(input, pageIdx, ref maxBillNum, maxSN, printTime, billLst, "右");
// //作废时需要同时作废相同VIN的左右两页,SortId相同表示是同一组左右 // // //作废时需要同时作废相同VIN的左右两页,SortId相同表示是同一组左右
// Guid sortId = GuidGenerator.Create(); // // Guid sortId = GuidGenerator.Create();
// foreach (var leftItm in leftLst) // // foreach (var leftItm in leftLst)
// { // // {
// leftItm.SortId = sortId; // // leftItm.SortId = sortId;
// } // // }
// foreach (var rightItm in rightLst) // // foreach (var rightItm in rightLst)
// { // // {
// rightItm.SortId = sortId; // // rightItm.SortId = sortId;
// } // // }
// reportMainLst.AddRange(rightLst); // // reportMainLst.AddRange(rightLst);
// reportMainLst.AddRange(leftLst); // // reportMainLst.AddRange(leftLst);
// } // // }
// //校验底盘号、零件是否重复打印 // // //校验底盘号、零件是否重复打印
// string checkVinPartRepeatSql = @" // // string checkVinPartRepeatSql = @"
// select top 1 a.BillNum from FisMenBanPackingList a join FisMenBanPackingRec b // // select top 1 a.BillNum from FisMenBanPackingList a join FisMenBanPackingRec b
// on a.Id = b.MenBanPackingListId // // on a.Id = b.MenBanPackingListId
// where a.ReportStatus = 0 // // where a.ReportStatus = 0
// and b.VIN = '{0}' and (TopSAPMaterialNum = '{1}' or BelowSAPMaterialNum = '{1}') // // and b.VIN = '{0}' and (TopSAPMaterialNum = '{1}' or BelowSAPMaterialNum = '{1}')
// "; // // ";
// foreach (MenBanPackingList reportMainObj in reportMainLst) // // foreach (MenBanPackingList reportMainObj in reportMainLst)
// { // // {
// foreach (MenBanPackingRec reportRecObj in reportMainObj.Details) // // foreach (MenBanPackingRec reportRecObj in reportMainObj.Details)
// { // // {
// string sql1 = string.Format(checkVinPartRepeatSql, reportRecObj.VIN, reportRecObj.PartCode2); // // string sql1 = string.Format(checkVinPartRepeatSql, reportRecObj.VIN, reportRecObj.PartCode2);
// string checkVinPartRepeatBillNum1 = _newJitDapperRepository.GetSingleBySql<string>(sql1, true); // // string checkVinPartRepeatBillNum1 = _newJitDapperRepository.GetSingleBySql<string>(sql1, true);
// if (string.IsNullOrEmpty(checkVinPartRepeatBillNum1) == false) // // if (string.IsNullOrEmpty(checkVinPartRepeatBillNum1) == false)
// { // // {
// throw new BusinessException("1001", $"与装箱单号{checkVinPartRepeatBillNum1}中的底盘号{reportRecObj.VIN}、零件号{reportRecObj.PartCode2}之间重复!"); // // throw new BusinessException("1001", $"与装箱单号{checkVinPartRepeatBillNum1}中的底盘号{reportRecObj.VIN}、零件号{reportRecObj.PartCode2}之间重复!");
// } // // }
// string sql2 = string.Format(checkVinPartRepeatSql, reportRecObj.VIN, reportRecObj.PartCode4); // // string sql2 = string.Format(checkVinPartRepeatSql, reportRecObj.VIN, reportRecObj.PartCode4);
// string checkVinPartRepeatBillNum2 = _newJitDapperRepository.GetSingleBySql<string>(sql2, true); // // string checkVinPartRepeatBillNum2 = _newJitDapperRepository.GetSingleBySql<string>(sql2, true);
// if (string.IsNullOrEmpty(checkVinPartRepeatBillNum2) == false) // // if (string.IsNullOrEmpty(checkVinPartRepeatBillNum2) == false)
// { // // {
// throw new BusinessException("1001", $"与装箱单号{checkVinPartRepeatBillNum2}中的底盘号{reportRecObj.VIN}、零件号{reportRecObj.PartCode4}之间重复!"); // // throw new BusinessException("1001", $"与装箱单号{checkVinPartRepeatBillNum2}中的底盘号{reportRecObj.VIN}、零件号{reportRecObj.PartCode4}之间重复!");
// } // // }
// } // // }
// } // // }
// //调用派格版库存接口 // // //调用派格版库存接口
// await SaveMiddleTable_MB(reportMainLst); // // await SaveMiddleTable_MB(reportMainLst);
// //插入门板打印记录表 // // //插入门板打印记录表
// //await _menBanPackingListRepository.InsertManyAsync(reportMainLst); // // //await _menBanPackingListRepository.InsertManyAsync(reportMainLst);
// foreach (var reportMainObj in reportMainLst) // // foreach (var reportMainObj in reportMainLst)
// { // // {
// var insObj = await _menBanPackingListRepository.InsertAsync(reportMainObj, true); // // var insObj = await _menBanPackingListRepository.InsertAsync(reportMainObj, true);
// if (insObj != null) // // if (insObj != null)
// { // // {
// retLst.Add(insObj.Id); // // retLst.Add(insObj.Id);
// } // // }
// } // // }
// //更新M110的门板打印标志:BillStatus=3 // // //更新M110的门板打印标志:BillStatus=3
// foreach (BillM110 billObj in billLst) // // foreach (BillM110 billObj in billLst)
// { // // {
// if (billObj.BillStatus == BillStatusEnum.Match) // // if (billObj.BillStatus == BillStatusEnum.Match)
// { // // {
// billObj.SetBillStatus(BillStatusEnum.Publish); // // billObj.SetBillStatus(BillStatusEnum.Publish);
// billObj.PrintTime = ServerHelper.CurrentDateTime; // // billObj.PrintTime = ServerHelper.CurrentDateTime;
// await _billM110Repository.UpdateAsync(billObj); // // await _billM110Repository.UpdateAsync(billObj);
// } // // }
// } // // }
//} //补打if // //} //补打if
await uow.CompleteAsync(); // await uow.CompleteAsync();
ret.Status = true; // ret.Status = true;
ret.Item = retLst; // ret.Item = retLst;
return ret; // return ret;
} // }
catch (Exception ex) // catch (Exception ex)
{ // {
await uow.RollbackAsync(); // await uow.RollbackAsync();
string errorMsg = _errorMessagePrefix + "SaveMenBanReport 执行出错:" + ex.Message; // string errorMsg = _errorMessagePrefix + "SaveMenBanReport 执行出错:" + ex.Message;
_logger.LogError(errorMsg); // _logger.LogError(errorMsg);
ret.Status = false; // ret.Status = false;
ret.Message = ex.Message; // ret.Message = ex.Message;
return ret; // return ret;
} // }
} //事务 // } //事务
} //}
[UnitOfWork] //[UnitOfWork]
[HttpPost] //[HttpPost]
[Route("load-menban-report")] //[Route("load-menban-report")]
public virtual async Task<List<MenBanPackingListDto>> LoadMenBanReport(List<Guid> input) //public virtual async Task<List<MenBanPackingListDto>> LoadMenBanReport(List<Guid> input)
{ //{
_logger.LogDebug(_errorMessagePrefix + "LoadMenBanReport 进入"); // _logger.LogDebug(_errorMessagePrefix + "LoadMenBanReport 进入");
try // try
{ // {
List<MenBanPackingList> reportMainLst = new List<MenBanPackingList>(); // List<MenBanPackingList> reportMainLst = new List<MenBanPackingList>();
reportMainLst = await _menBanPackingListRepository.GetListAsync(itm => input.Contains(itm.Id) == true, true); // reportMainLst = await _menBanPackingListRepository.GetListAsync(itm => input.Contains(itm.Id) == true, true);
//按大众顺序号排序 // //按大众顺序号排序
foreach (var reportMainObj in reportMainLst) // foreach (var reportMainObj in reportMainLst)
{ // {
List<MenBanPackingRec> recLst = reportMainObj.Details; // List<MenBanPackingRec> recLst = reportMainObj.Details;
if (recLst == null) // if (recLst == null)
continue; // continue;
bool has1999 = recLst.Any(itm => itm.HostSN.Contains("1999") || itm.HostSN.Contains("1998") || itm.HostSN.Contains("1997")
|| itm.HostSN.Contains("1996") || itm.HostSN.Contains("1995") || itm.HostSN.Contains("1994")
|| itm.HostSN.Contains("1993") || itm.HostSN.Contains("1992") || itm.HostSN.Contains("1991")
|| itm.HostSN.Contains("1990") || itm.HostSN.Contains("1989") || itm.HostSN.Contains("1988")
|| itm.HostSN.Contains("1987") || itm.HostSN.Contains("1986") || itm.HostSN.Contains("1985")
|| itm.HostSN.Contains("1984") || itm.HostSN.Contains("1983") || itm.HostSN.Contains("1982")
|| itm.HostSN.Contains("1981") || itm.HostSN.Contains("1980") || itm.HostSN.Contains("1979")
|| itm.HostSN.Contains("1978") || itm.HostSN.Contains("1977") || itm.HostSN.Contains("1976")
);
bool has0001 = recLst.Any(itm => itm.HostSN.Contains("0001") || itm.HostSN.Contains("0002") || itm.HostSN.Contains("0003")
|| itm.HostSN.Contains("0004") || itm.HostSN.Contains("0005") || itm.HostSN.Contains("0006")
|| itm.HostSN.Contains("0007") || itm.HostSN.Contains("0008") || itm.HostSN.Contains("0009")
|| itm.HostSN.Contains("0010") || itm.HostSN.Contains("0011") || itm.HostSN.Contains("0012")
|| itm.HostSN.Contains("0013") || itm.HostSN.Contains("0014") || itm.HostSN.Contains("0015")
|| itm.HostSN.Contains("0016") || itm.HostSN.Contains("0017") || itm.HostSN.Contains("0018")
|| itm.HostSN.Contains("0019") || itm.HostSN.Contains("0020") || itm.HostSN.Contains("0021")
|| itm.HostSN.Contains("0022") || itm.HostSN.Contains("0023") || itm.HostSN.Contains("0024")
);
if (has1999 && has0001)
{
reportMainObj.Details = recLst.OrderBy(itm => (itm.HostSN.TryToIntZero() % 10000) < 240 ? (itm.HostSN.TryToIntZero() % 10000 + 1999) : (itm.HostSN.TryToIntZero() % 10000)).ToList();
}
else
{
reportMainObj.Details = recLst.OrderBy(itm => itm.HostSN).ToList();
}
}
#region 格式转换 // bool has1999 = recLst.Any(itm => itm.HostSN.Contains("1999") || itm.HostSN.Contains("1998") || itm.HostSN.Contains("1997")
//实体 转 DTO // || itm.HostSN.Contains("1996") || itm.HostSN.Contains("1995") || itm.HostSN.Contains("1994")
List<MenBanPackingListDto> targetLst = ObjectMapper.Map<List<MenBanPackingList>, List<MenBanPackingListDto>>(reportMainLst); // || itm.HostSN.Contains("1993") || itm.HostSN.Contains("1992") || itm.HostSN.Contains("1991")
targetLst = targetLst.OrderBy(itm => itm.BillNum).ToList(); // || itm.HostSN.Contains("1990") || itm.HostSN.Contains("1989") || itm.HostSN.Contains("1988")
// || itm.HostSN.Contains("1987") || itm.HostSN.Contains("1986") || itm.HostSN.Contains("1985")
// || itm.HostSN.Contains("1984") || itm.HostSN.Contains("1983") || itm.HostSN.Contains("1982")
// || itm.HostSN.Contains("1981") || itm.HostSN.Contains("1980") || itm.HostSN.Contains("1979")
// || itm.HostSN.Contains("1978") || itm.HostSN.Contains("1977") || itm.HostSN.Contains("1976")
// );
// bool has0001 = recLst.Any(itm => itm.HostSN.Contains("0001") || itm.HostSN.Contains("0002") || itm.HostSN.Contains("0003")
// || itm.HostSN.Contains("0004") || itm.HostSN.Contains("0005") || itm.HostSN.Contains("0006")
// || itm.HostSN.Contains("0007") || itm.HostSN.Contains("0008") || itm.HostSN.Contains("0009")
// || itm.HostSN.Contains("0010") || itm.HostSN.Contains("0011") || itm.HostSN.Contains("0012")
// || itm.HostSN.Contains("0013") || itm.HostSN.Contains("0014") || itm.HostSN.Contains("0015")
// || itm.HostSN.Contains("0016") || itm.HostSN.Contains("0017") || itm.HostSN.Contains("0018")
// || itm.HostSN.Contains("0019") || itm.HostSN.Contains("0020") || itm.HostSN.Contains("0021")
// || itm.HostSN.Contains("0022") || itm.HostSN.Contains("0023") || itm.HostSN.Contains("0024")
// );
// if (has1999 && has0001)
// {
// reportMainObj.Details = recLst.OrderBy(itm => (itm.HostSN.TryToIntZero() % 10000) < 240 ? (itm.HostSN.TryToIntZero() % 10000 + 1999) : (itm.HostSN.TryToIntZero() % 10000)).ToList();
// }
// else
// {
// reportMainObj.Details = recLst.OrderBy(itm => itm.HostSN).ToList();
// }
// }
//子表BillNum赋值, BillNum填充空格 // #region 格式转换
foreach (var masterObj in targetLst) // //实体 转 DTO
{ // List<MenBanPackingListDto> targetLst = ObjectMapper.Map<List<MenBanPackingList>, List<MenBanPackingListDto>>(reportMainLst);
masterObj.BillNum = GetTrueString(masterObj.BillNum); // targetLst = targetLst.OrderBy(itm => itm.BillNum).ToList();
int sn = 1;
foreach (var detailObj in masterObj.Details)
{
detailObj.BillNum = masterObj.BillNum;
detailObj.KNR = GetTrueString(detailObj.KNR);
detailObj.SN = (sn++).ToString();
detailObj.VIN = detailObj.VIN.TryToRight(6); //底盘号返回后六位
}
}
#endregion
return targetLst;
}
catch (Exception ex)
{
string errorMsg = _errorMessagePrefix + "LoadMenBanReport 执行出错:" + ex.Message;
_logger.LogError(errorMsg);
throw new UserFriendlyException(errorMsg);
}
}
private static string GetTrueString(string str) // //子表BillNum赋值, BillNum填充空格
{ // foreach (var masterObj in targetLst)
return str == null ? " " : str.Trim(); ; // {
} // masterObj.BillNum = GetTrueString(masterObj.BillNum);
// int sn = 1;
// foreach (var detailObj in masterObj.Details)
// {
// detailObj.BillNum = masterObj.BillNum;
// detailObj.KNR = GetTrueString(detailObj.KNR);
// detailObj.SN = (sn++).ToString();
// detailObj.VIN = detailObj.VIN.TryToRight(6); //底盘号返回后六位
// }
// }
// #endregion
// return targetLst;
// }
// catch (Exception ex)
// {
// string errorMsg = _errorMessagePrefix + "LoadMenBanReport 执行出错:" + ex.Message;
// _logger.LogError(errorMsg);
// throw new UserFriendlyException(errorMsg);
// }
//}
//private static string GetTrueString(string str)
//{
// return str == null ? " " : str.Trim(); ;
//}
/// <summary> /// <summary>
/// 打印柱护板装箱单 /// 打印柱护板装箱单

49
Modules/新版JIT或JIS系统服务端/src/WY.NewJit.Application/WY.NewJit.Application.xml

@ -1013,6 +1013,20 @@
根据筛选条件获取实体列表 根据筛选条件获取实体列表
</summary> </summary>
</member> </member>
<member name="M:WY.NewJit.MsgCheck.BillM100AppService.QueryByConditionAsync2(WY.NewJit.MsgCheck.QueryBillM100Dto)">
<summary>
包含主表横向排列零件字段
</summary>
<param name="input"></param>
<returns></returns>
</member>
<member name="M:WY.NewJit.MsgCheck.BillM100AppService.FillPartCodeField(System.Collections.Generic.List{WY.NewJit.MsgCheck.BillM110Dto})">
<summary>
填充M110主表横向零件字段
</summary>
<param name="m110Dtos"></param>
<returns></returns>
</member>
<member name="M:WY.NewJit.MsgCheck.BillM100AppService.GetMBReportDetailList(WY.NewJit.Extends.MenBanPrintInputDto,System.Boolean)"> <member name="M:WY.NewJit.MsgCheck.BillM100AppService.GetMBReportDetailList(WY.NewJit.Extends.MenBanPrintInputDto,System.Boolean)">
<summary> <summary>
根据条件取用于打印的门板单据列表 根据条件取用于打印的门板单据列表
@ -1031,17 +1045,16 @@
<param name="billLst"></param> <param name="billLst"></param>
<returns></returns> <returns></returns>
</member> </member>
<member name="M:WY.NewJit.MsgCheck.BillM100AppService.DoMBPrint(WY.NewJit.Extends.MenBanPrintInputDto,System.Int32,System.Double,System.Collections.Generic.List{WY.NewJit.MsgCheck.BillM100},System.String,System.String[])"> <member name="M:WY.NewJit.MsgCheck.BillM100AppService.DoMBPrint(WY.NewJit.Extends.MenBanPrintInputDto,System.Int32,System.Double,System.Collections.Generic.List{WY.NewJit.MsgCheck.BillM100},System.String,System.Collections.Generic.List{WY.NewJit.MsgBaseData.DicItem})">
<summary> <summary>
打印左侧或右侧门板 打印左侧或右侧门板
</summary> </summary>
<param name="input"></param> <param name="input"></param>
<param name="pageIdx"></param> <param name="pageIdx"></param>
<param name="maxBillNum"></param>
<param name="maxSN"></param> <param name="maxSN"></param>
<param name="printTime"></param>
<param name="billLst"></param> <param name="billLst"></param>
<param name="partLargeType"></param> <param name="reportSort">报表分类,dui</param>
<param name="partLargeTypeLst">零件大类字典项</param>
<returns></returns> <returns></returns>
</member> </member>
<member name="M:WY.NewJit.MsgCheck.BillM100AppService.CheckMBHostSNBreakNum(WY.NewJit.Extends.MenBanPrintInputDto)"> <member name="M:WY.NewJit.MsgCheck.BillM100AppService.CheckMBHostSNBreakNum(WY.NewJit.Extends.MenBanPrintInputDto)">
@ -1118,6 +1131,11 @@
<param name="input">生产线编号列表</param> <param name="input">生产线编号列表</param>
<returns>生产线超时情况</returns> <returns>生产线超时情况</returns>
</member> </member>
<member name="P:WY.NewJit.MsgCheck.M100_M110_Result.PartDisplayColumnName">
<summary>
零件在主表横向排列显示的列名
</summary>
</member>
<member name="T:WY.NewJit.MsgCheck.NewM100AppService"> <member name="T:WY.NewJit.MsgCheck.NewM100AppService">
<summary> <summary>
M100单据管理应用服务实现 M100单据管理应用服务实现
@ -1405,22 +1423,6 @@
<param name="partLargeType"></param> <param name="partLargeType"></param>
<returns></returns> <returns></returns>
</member> </member>
<member name="M:WY.NewJit.MsgCheck.BillM110AppService.CheckMBHostSNBreakNum(WY.NewJit.Extends.MenBanPrintInputDto)">
<summary>
打印前检查大众顺序号是否断号
</summary>
<param name="input"></param>
<returns>断号时Item不为空</returns>
</member>
<member name="M:WY.NewJit.MsgCheck.BillM110AppService.GetPrintStartHostSN2(System.String,System.String,System.String)">
<summary>
根据生产线获取正常打印单据的起始大众顺序号2
</summary>
<param name="productLine">生产线</param>
<param name="isZhuHuBan">柱护板是1 门板是非1</param>
<param name="groupName">柱护板分组类型</param>
<returns>起始大众顺序号</returns>
</member>
<member name="M:WY.NewJit.MsgCheck.BillM110AppService.GetListAsync(WY.NewJit.MsgCheck.QueryBillM110Dto)"> <member name="M:WY.NewJit.MsgCheck.BillM110AppService.GetListAsync(WY.NewJit.MsgCheck.QueryBillM110Dto)">
<summary> <summary>
根据筛选条件获取分页实体列表 根据筛选条件获取分页实体列表
@ -1472,13 +1474,6 @@
<param name="input">导入文件流</param> <param name="input">导入文件流</param>
<returns>执行成功返回真</returns> <returns>执行成功返回真</returns>
</member> </member>
<member name="M:WY.NewJit.MsgCheck.BillM110AppService.ProductLineTimeoutRemind(WY.NewJit.MsgCheck.TimeOutRemindInputDto)">
<summary>
生产线超时提醒
</summary>
<param name="input">生产线编号列表</param>
<returns>生产线超时情况</returns>
</member>
<member name="T:WY.NewJit.MsgCheck.BillR100AppService"> <member name="T:WY.NewJit.MsgCheck.BillR100AppService">
<summary> <summary>
R100单据管理应用服务实现 R100单据管理应用服务实现

6
Modules/新版JIT或JIS系统服务端/src/WY.NewJit.Domain.Shared/Common/ObjectResultDto.cs

@ -7,7 +7,6 @@ namespace WY.NewJit
public class ObjectResultDto public class ObjectResultDto
{ {
private bool isRepeat;
public ObjectResultDto() public ObjectResultDto()
{ {
@ -15,11 +14,6 @@ namespace WY.NewJit
this.Message = ""; this.Message = "";
} }
public ObjectResultDto(bool isRepeat)
{
this.isRepeat = isRepeat;
}
public ObjectResultDto(bool status, string errorMessage) public ObjectResultDto(bool status, string errorMessage)
{ {
this.Status = status; this.Status = status;

6
Modules/新版JIT或JIS系统服务端/src/WY.NewJit.Domain.Shared/MsgCheck/BillStatusEnum.cs

@ -13,13 +13,13 @@ namespace WY.NewJit.MsgCheck
/// <summary> /// <summary>
/// 未匹配 /// 未匹配
/// </summary> /// </summary>
[Description("未匹配")] //[Description("未匹配")]
NotMatch = 1, //NotMatch = 1,
/// <summary> /// <summary>
/// 已匹配,未打印 /// 已匹配,未打印
/// </summary> /// </summary>
[Description("已匹配")] [Description("未打印")]
Match = 2, Match = 2,
/// <summary> /// <summary>

24
Modules/新版JIT或JIS系统服务端/src/WY.NewJit.Domain/MsgBaseData/Entitys/DicItem.cs

@ -48,10 +48,32 @@ namespace WY.NewJit.MsgBaseData
public virtual string DicItemSort4 { get; set; } public virtual string DicItemSort4 { get; set; }
/// <summary> /// <summary>
/// 分类5 /// 分类5 (零件大类对应客户零件号)
/// </summary> /// </summary>
public virtual string DicItemSort5 { get; set; } public virtual string DicItemSort5 { get; set; }
/// <summary>
/// 分类6(零件大类对应显示车型)
/// </summary>
public virtual string DicItemSort6 { get; set; }
/// <summary>
/// 分类7(零件大类对应报表字段显示顺序)
/// </summary>
public virtual string DicItemSort7 { get; set; }
/// <summary>
/// 分类8(零件大类对应装箱清单号的前缀,例如C或T)
/// </summary>
public virtual string DicItemSort8 { get; set; }
/// <summary>
/// 分类9(零件大类对应 打印标准数量 12 或 24)
/// </summary>
public virtual string DicItemSort9 { get; set; }
protected DicItem() protected DicItem()
{ {
//此构造函数是提供给ORM用来从数据库中获取实体. //此构造函数是提供给ORM用来从数据库中获取实体.

4
Modules/新版JIT或JIS系统服务端/src/WY.NewJit.Domain/MsgBaseData/Services/LineSNDomianService.cs

@ -19,7 +19,7 @@ namespace WY.NewJit.MsgBaseData
} }
/// <summary> /// <summary>
/// 生成门板或柱护板右上角顺序号 /// 生成门板或柱护板右上角顺序号,每天零点开始往复循环1-99
/// </summary> /// </summary>
/// <param name="productType">门板或柱护板</param> /// <param name="productType">门板或柱护板</param>
/// <param name="productLine">产线</param> /// <param name="productLine">产线</param>
@ -38,7 +38,7 @@ namespace WY.NewJit.MsgBaseData
} }
DateTime now = DateTime.Now; DateTime now = DateTime.Now;
DateTime today8 = new DateTime(now.Year, now.Month, now.Day, 8, 0, 0); DateTime today8 = new DateTime(now.Year, now.Month, now.Day, 0, 0, 0);
if (typeObj != null) if (typeObj != null)
{ {

2
Shared/Win.Sfs.Shared/obj/Debug/netcoreapp5/Win.Sfs.Shared.AssemblyInfo.cs

@ -14,7 +14,7 @@ using System.Reflection;
[assembly: System.Reflection.AssemblyCompanyAttribute("Win.Sfs.Shared")] [assembly: System.Reflection.AssemblyCompanyAttribute("Win.Sfs.Shared")]
[assembly: System.Reflection.AssemblyConfigurationAttribute("Debug")] [assembly: System.Reflection.AssemblyConfigurationAttribute("Debug")]
[assembly: System.Reflection.AssemblyFileVersionAttribute("2.0.0.0")] [assembly: System.Reflection.AssemblyFileVersionAttribute("2.0.0.0")]
[assembly: System.Reflection.AssemblyInformationalVersionAttribute("2.0.0+9f1698b0f932dfc3e8d926fe272b9e5c15605da4")] [assembly: System.Reflection.AssemblyInformationalVersionAttribute("2.0.0+55c68df95edc067cefe3d74120d28daebdd00649")]
[assembly: System.Reflection.AssemblyProductAttribute("Win.Sfs.Shared")] [assembly: System.Reflection.AssemblyProductAttribute("Win.Sfs.Shared")]
[assembly: System.Reflection.AssemblyTitleAttribute("Win.Sfs.Shared")] [assembly: System.Reflection.AssemblyTitleAttribute("Win.Sfs.Shared")]
[assembly: System.Reflection.AssemblyVersionAttribute("2.0.0.0")] [assembly: System.Reflection.AssemblyVersionAttribute("2.0.0.0")]

2
Shared/Win.Sfs.Shared/obj/Debug/netcoreapp5/Win.Sfs.Shared.AssemblyInfoInputs.cache

@ -1 +1 @@
d755eed168280a373eeb0870bc5023deded8bf4c7a53f8c511dbfc9601ca31ed 48b37d1c823a2c28ae1847b40d58f961e3a2bcf25479d6132ccf6601b7861fc4

2
Shared/Win.Utils/obj/Debug/netcoreapp5/Win.Utils.AssemblyInfo.cs

@ -14,7 +14,7 @@ using System.Reflection;
[assembly: System.Reflection.AssemblyCompanyAttribute("Win.Utils")] [assembly: System.Reflection.AssemblyCompanyAttribute("Win.Utils")]
[assembly: System.Reflection.AssemblyConfigurationAttribute("Debug")] [assembly: System.Reflection.AssemblyConfigurationAttribute("Debug")]
[assembly: System.Reflection.AssemblyFileVersionAttribute("2.0.0.0")] [assembly: System.Reflection.AssemblyFileVersionAttribute("2.0.0.0")]
[assembly: System.Reflection.AssemblyInformationalVersionAttribute("2.0.0+32f3c7c4f91a6e47f64ef11cb91719a67226370a")] [assembly: System.Reflection.AssemblyInformationalVersionAttribute("2.0.0+55c68df95edc067cefe3d74120d28daebdd00649")]
[assembly: System.Reflection.AssemblyProductAttribute("Win.Utils")] [assembly: System.Reflection.AssemblyProductAttribute("Win.Utils")]
[assembly: System.Reflection.AssemblyTitleAttribute("Win.Utils")] [assembly: System.Reflection.AssemblyTitleAttribute("Win.Utils")]
[assembly: System.Reflection.AssemblyVersionAttribute("2.0.0.0")] [assembly: System.Reflection.AssemblyVersionAttribute("2.0.0.0")]

2
Shared/Win.Utils/obj/Debug/netcoreapp5/Win.Utils.AssemblyInfoInputs.cache

@ -1 +1 @@
b809d5ff0b4e2ed0d2cfb967cbf1ed268b666995e296a8a123408bdd3804a21c 319ab87b608dd5265bea28a1b45afd1f00fabe88367ebb4631ed6d98436c50fc

Loading…
Cancel
Save