From 7f0031707fee239e5918de2feba90c17fa0d7bad Mon Sep 17 00:00:00 2001 From: "qianhao.xu" Date: Tue, 10 Dec 2024 16:03:49 +0800 Subject: [PATCH] =?UTF-8?q?=E5=B7=A5=E5=8D=95=E5=8F=B7=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../wwwroot/ImportTemplate/workorder.xlsx | Bin 11794 -> 11972 bytes DOAN.Model/MES/Product/Dto/ProWorkorderDto.cs | 10 +++- DOAN.Model/MES/Product/ProWorkorder.cs | 13 ++++- .../MES/Product/ProWorkorderService.cs | 52 ++++++++++++++---- 4 files changed, 59 insertions(+), 16 deletions(-) diff --git a/DOAN.Admin.WebApi/wwwroot/ImportTemplate/workorder.xlsx b/DOAN.Admin.WebApi/wwwroot/ImportTemplate/workorder.xlsx index e49c91e89b73b19941caa5bee897fe7a6cb5c93c..be2589c509402a02728fdb0ffefe3f6ff726fcf8 100644 GIT binary patch delta 7135 zcma)hWmpuJt2D9R8 zE}^K+mhQ}{TADqb_ZWG{Q_So6PrZu*>N9F>6b!Ja+^61zs~_vW99IkH@jcCQ#~oW} z>L5{Z*za(zppH-SiYD`TPfXsGNMG%}y|Ak&Eb>r=Zv9+FXA(#prq+=AJx^TS#U<54 z*OobRh>4ltrYJxiGY&AvS)k`Pm(Aqw6Cb@AyU%_!E%jNrt-O09xLWJKbaS8I_hQ z8agQo3JMlVxW ztRuG3s0=u_E54B$Pl~qKNOc%Ix0Ppx4tVqyy3;18KdTocV|dEnyD%7&U`NS%BbM_$ zdPpj)FM8^@Kl^k^t#P!p+O^63_xdoFT?Dd6N-)n&Y0*{a#E%?bCple6Dw zojJMt&KcBZJOq$1h1UDKbE!w(j*_M3-x5(c(TrK=3HPQj($rEfv2Wdqr97_1se5X6 zarRy~xVO*!9d}c~ID|I&Ix{C;qSwbd6uHi{>l}_GOcJ!40T+oUQX12(-(`^O*tq4e z2U@c;&~p5XLZ5JO$4ldiTP3}B>vjh|8gvKVQP+kUrNae{nwrk0f==6c5?af?%P;6( zAT=zmjyKO>RKPB+&8{Kk*T2D;#(L}^7q{vK$3wqQ#&`7}!;mCeXKVWgCZW^T5Brbbet)W%+h>aafXd;9|C<)_m@w^7by`!+N* zxX)D*6C~JrLm@A0_41SYJ)7H|UE>Z{(E4SZwDwPw0=G}4kV zoIX~LbjDiekjKN(-aLld7@tFp9sQMqSNSz$A4ei_o-_^zyVH-J!R;TvIZ7H(i(X z0iUVlLaGn6UTx*?<>3h46jx6dx04dS{pRlkALV0kmc$rcpJeUZwMa3Av?*&n7OXtI z-`Bptq3{%pT&QJnM9P@vW@OH-Vvtjs{;;?Bcv@j+vD%#?j7Id~ka z5*ASr@{~r+lV`414bzFSq&)fD$2U2QAVt(*-@FP<6SGEiaj$2gS07W12Au?okZ4pC zh$&OPSlH8^w8uZl_s;Z=W&No{SS)ehes>~WACX(CVUoG`5hs-sW1HTJwQJA3Af$}I zmRdMlbmTRWWM_RXF1;!}r_7e*f?h>CIV>^!_9ZR+6+IQbBpd>#VOuq3LX~MdI*2M1 z$b68Bn<3T07o+`@U#(+2uj9cZq;y+8AgFYr`zcz+y+(x<<5LJIosv1e+}ainUG;Q< z3okp>^Vl~`bO_it&^GYdH{jK%Q$hxFlnb|S=8C2hJ9zCIz;~>%DLYkvAYVJ!lxL$j z<{y7|^7ZU-uduoIMuK{2EWhz}-JHE>{ZFN%$WmHNlkv}WQ&Zb6l;bK3MbnkhxB|CKCBK&as^-^}r#4q%PR43D(LT|J~+lKqzn_J5*k@N?clec~WQ@6O5mOgn!i z02U05f_{L;L4%-?&@gE1$P=X|^l1#-+lZzJuLx9N+0fL>mgyhnj<%~5(k{h`v4FXv zm#ZBaj2R3WOh)uZj7AJbOlRmXV_@rzsZ%@pS{VZkm|l;p<#xPsVsb&jx)pzpV+{20 zBI-BRn7&`Rze|{Pg|uLqE>bTqBj4fw=RMmd`ya$#IM2F&NhEZVYnf0m{i&A<4ak

dA#{W`UL4B8;1|r_>LDDzR8pF@hcJ!5m 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 delta 7010 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 QsQFMRC)=}2mcPmW0o}JwEC2ui diff --git a/DOAN.Model/MES/Product/Dto/ProWorkorderDto.cs b/DOAN.Model/MES/Product/Dto/ProWorkorderDto.cs index 8dc9614..e6d7b0f 100644 --- a/DOAN.Model/MES/Product/Dto/ProWorkorderDto.cs +++ b/DOAN.Model/MES/Product/Dto/ProWorkorderDto.cs @@ -79,10 +79,16 @@ namespace DOAN.Model.MES.product.Dto public string GroupCode { get; set; } + ///

- /// 订单号 + /// 进料单号(领料) /// - public string OrderNumber { get; set; } + public string FeedOrder { get; set; } + + /// + /// 客户单号(出货) + /// + public string CustomerOrder { get; set; } public string Remark01 { get; set; } diff --git a/DOAN.Model/MES/Product/ProWorkorder.cs b/DOAN.Model/MES/Product/ProWorkorder.cs index f40d881..c9e177d 100644 --- a/DOAN.Model/MES/Product/ProWorkorder.cs +++ b/DOAN.Model/MES/Product/ProWorkorder.cs @@ -127,11 +127,18 @@ namespace DOAN.Model.MES.product public string GroupCode { get; set; } + /// - /// 订单号 + /// 进料单号(领料) /// - [SugarColumn(ColumnName = "ordernumber")] - public string OrderNumber { get; set; } + [SugarColumn(ColumnName = "feed_order")] + public string FeedOrder { get; set; } + + /// + /// 客户单号(出货) + /// + [SugarColumn(ColumnName = "customer_order")] + public string CustomerOrder { get; set; } /// /// 备注 diff --git a/DOAN.Service/MES/Product/ProWorkorderService.cs b/DOAN.Service/MES/Product/ProWorkorderService.cs index 38e1786..93ecb7e 100644 --- a/DOAN.Service/MES/Product/ProWorkorderService.cs +++ b/DOAN.Service/MES/Product/ProWorkorderService.cs @@ -254,7 +254,8 @@ namespace DOAN.Service.MES.product int result = 0; proWorkorder.Id = XueHua; proWorkorder.WorkorderDate= DOANConvertDate.ConvertLocalDate(proWorkorder.WorkorderDate??DateTime.MinValue); - + // 获取 产品代号 + List ProductCodeList = Context.Queryable().Where(it => it.DictType == "product_code").ToList(); DateTime handleDate = proWorkorder.WorkorderDate.Value; //插入工单 if (!string.IsNullOrEmpty(next_id) && next_id != "-1") @@ -270,8 +271,10 @@ namespace DOAN.Service.MES.product index = Convert.ToInt32(maxs.Workorder.Substring(maxs.Workorder.Length - 3)) + 1; } - proWorkorder.Workorder = "K" + handleDate.ToString("yyyyMMdd") + "_" + proWorkorder.GroupCode + "_" + proWorkorder.RouteCode + "_" + index.ToString("000"); + // proWorkorder.Workorder = "K" + handleDate.ToString("yyyyMMdd") + "_" + proWorkorder.GroupCode + "_" + proWorkorder.RouteCode + "_" + index.ToString("000"); + string nickCode = ProductCodeList.Where(it => it.DictLabel == proWorkorder.productionCode).Select(it => it.DictValue).FirstOrDefault(); + proWorkorder.Workorder = "K" + handleDate.ToString("yyyyMMdd") + "_" + proWorkorder.RouteCode + proWorkorder.GroupCode + "_" + nickCode + "_" + index.ToString("000"); int sortNum = Context.Queryable().Where(it => it.Id == next_id).Select(it => it.Sort.Value).First(); @@ -323,7 +326,10 @@ namespace DOAN.Service.MES.product index = Convert.ToInt32(maxs.Substring(maxs.Length - 3)) + 1; proWorkorder.Sort = maxWorkorder.Sort + 10; } - proWorkorder.Workorder = "H" + handleDate.ToString("yyyyMMdd") + "_" + proWorkorder.GroupCode + "_" + proWorkorder.RouteCode + "_" + index.ToString("000"); + //proWorkorder.Workorder = "H" + handleDate.ToString("yyyyMMdd") + "_" + proWorkorder.GroupCode + "_" + proWorkorder.RouteCode + "_" + index.ToString("000"); + + string nickCode = ProductCodeList.Where(it => it.DictLabel == proWorkorder.productionCode).Select(it => it.DictValue).FirstOrDefault(); + proWorkorder.Workorder = "H" + handleDate.ToString("yyyyMMdd") + "_" + proWorkorder.RouteCode + proWorkorder.GroupCode + "_" + nickCode + "_" + index.ToString("000"); proWorkorder.Status = 1; @@ -411,6 +417,8 @@ namespace DOAN.Service.MES.product int result = 0; List workorderList = new(); DateTime dateValue = DateTime.MinValue; + // 获取 产品代号 + List ProductCodeList= Context.Queryable().Where(it => it.DictType == "product_code").ToList(); using (var stream = formFile.OpenReadStream()) { try @@ -629,10 +637,18 @@ namespace DOAN.Service.MES.product NPOI.SS.UserModel.ICell currentCell_22 = currentRow.GetCell(15); workorder.Beat = (int)currentCell_22?.NumericCellValue; - - //16备注 + //16进料单号(领料) NPOI.SS.UserModel.ICell currentCell_010 = currentRow.GetCell(16); - workorder.Remark01 = currentCell_010.StringCellValue; + workorder.FeedOrder = currentCell_010.StringCellValue; + + //17 客户单号(出货) + NPOI.SS.UserModel.ICell currentCell_011 = currentRow.GetCell(17); + workorder.CustomerOrder = currentCell_011.StringCellValue; + + + //18备注 + NPOI.SS.UserModel.ICell currentCell_012 = currentRow.GetCell(18); + workorder.Remark01 = currentCell_012.StringCellValue; workorder.Id = XueHua; workorder.CreatedBy = username; @@ -641,8 +657,10 @@ namespace DOAN.Service.MES.product workorder.Status = 1; //工单 2024-9-13-组-线-序号 int index = (row - 3); - workorder.Workorder = dateValue.ToString("yyyyMMdd") + "_" + workorder.GroupCode + "_" + workorder.RouteCode + "_" + index.ToString("000"); + string nickCode= ProductCodeList.Where(it=>it.DictLabel==workorder.productionCode).Select(it=>it.DictValue).FirstOrDefault(); + workorder.Workorder = dateValue.ToString("yyyyMMdd") + "_" + workorder.RouteCode+ workorder.GroupCode + "_" + nickCode + "_" + index.ToString("000"); workorder.Sort = index * 10; + CultureInfo culture = CultureInfo.CurrentCulture; @@ -687,7 +705,8 @@ namespace DOAN.Service.MES.product List workorderList = new(); DateTime dateValue = DateTime.MinValue; - + // 获取 产品代号 + List ProductCodeList = Context.Queryable().Where(it => it.DictType == "product_code").ToList(); using (var stream = formFile.OpenReadStream()) { try @@ -910,9 +929,18 @@ namespace DOAN.Service.MES.product workorder.Beat = (int)currentCell_22?.NumericCellValue; - //16备注 + //16进料单号(领料) NPOI.SS.UserModel.ICell currentCell_010 = currentRow.GetCell(16); - workorder.Remark01 = currentCell_010.StringCellValue; + workorder.FeedOrder = currentCell_010.StringCellValue; + + //17 客户单号(出货) + NPOI.SS.UserModel.ICell currentCell_011 = currentRow.GetCell(17); + workorder.CustomerOrder = currentCell_011.StringCellValue; + + + //18备注 + NPOI.SS.UserModel.ICell currentCell_012 = currentRow.GetCell(18); + workorder.Remark01 = currentCell_012.StringCellValue; #endregion @@ -934,8 +962,10 @@ namespace DOAN.Service.MES.product int flowNum = index + Convert.ToInt16(MaxWorkorder.Workorder.Substring(MaxWorkorder.Workorder.Length - 3, 3)); - workorder.Workorder = dateValue.ToString("yyyyMMdd") + "_" + workorder.GroupCode + "_" + workorder.RouteCode + "_" + flowNum.ToString("000"); + //workorder.Workorder = dateValue.ToString("yyyyMMdd") + "_" + workorder.GroupCode + "_" + workorder.RouteCode + "_" + flowNum.ToString("000"); + string nickCode = ProductCodeList.Where(it => it.DictLabel == workorder.productionCode).Select(it => it.DictValue).FirstOrDefault(); + workorder.Workorder = dateValue.ToString("yyyyMMdd") + "_" + workorder.RouteCode + workorder.GroupCode + "_" + nickCode + "_" + index.ToString("000"); workorder.Sort = index * 10 + Convert.ToInt16(MaxWorkorder.Sort);