MES.Service/Dto/service/WarehouseQuery.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
MES.Service/Dto/webApi/ErpCAB.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
MES.Service/Modes/MesBarcodeType.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
MES.Service/Modes/MesRfPrnbarcode.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
MES.Service/service/BasicData/MesItemsManager.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
MES.Service/service/Warehouse/OrganizeService.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
MESApplication/Controllers/BasicData/MesItemsController.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
MESApplication/Controllers/Warehouse/OrganizeController.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
MESApplication/Startup.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
MES.Service/Dto/service/WarehouseQuery.cs
@@ -23,4 +23,13 @@ public string? Factory { get; set; } public string? Company { get; set; } public string? ItemNo { get; set; } public string? ItemModel { get; set; } public string? OrgName { get; set; } public string? OrgOwner { get; set; } public string? ItemNum { get; set; } public string? Printnumn { get; set; } public string? ItemName { get; set; } } MES.Service/Dto/webApi/ErpCAB.cs
@@ -23,6 +23,8 @@ public string FENTRYID { get; set; } public string? FID { get; set; } public string? FSeq { get; set; } public string? SCRAPQTY { get; set; } public string? SCRAPRATE { get; set; } public string? FFixScrapQty { get; set; } public string? FScrapRate { get; set; } } MES.Service/Modes/MesBarcodeType.cs
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,214 @@ using System; using System.Collections.Generic; using System.Linq; using SqlSugar; namespace MES.Service.Modes { /// <summary> /// æ¡ç ç±»å表 ///</summary> [SugarTable("MES_BARCODE_TYPE")] public class MesBarcodeType { /// <summary> /// æ¡ç ç±»åID(seq_me_id) ///</summary> [SugarColumn(ColumnName="ID" ,IsPrimaryKey = true )] public decimal Id { get; set; } /// <summary> /// 使ç¨åºæ ///</summary> [SugarColumn(ColumnName="USE_SITE" )] public string UseSite { get; set; } /// <summary> /// æ¡ç ç±»ååç§° ///</summary> [SugarColumn(ColumnName="BARCODE_TYPE_NAME" )] public string BarcodeTypeName { get; set; } /// <summary> /// ç å¶ ///</summary> [SugarColumn(ColumnName="CODE" )] public string Code { get; set; } /// <summary> /// æ¡ç 纸宽 ///</summary> [SugarColumn(ColumnName="PAPER_WIDTH" )] public decimal? PaperWidth { get; set; } /// <summary> /// æ¡ç çº¸é« ///</summary> [SugarColumn(ColumnName="PAPER_HEIGHT" )] public decimal? PaperHeight { get; set; } /// <summary> /// æ¡ç å¼å§ä½ç½®X ///</summary> [SugarColumn(ColumnName="BARCODE_BEGIN_POSITION_X" )] public decimal? BarcodeBeginPositionX { get; set; } /// <summary> /// æ¡ç å¼å§ä½ç½®Y ///</summary> [SugarColumn(ColumnName="BARCODE_BEGIN_POSITION_Y" )] public decimal? BarcodeBeginPositionY { get; set; } /// <summary> /// ä¸å¼ æ¡ç çº¸ä¸æ¡ç ä¸ªæ° ///</summary> [SugarColumn(ColumnName="PAPER_NUM" )] public decimal? PaperNum { get; set; } /// <summary> /// ä¸å¼ æ¡ç çº¸ä¸æ¯è¡æ¡ç ä¸ªæ° ///</summary> [SugarColumn(ColumnName="PAPER_ROW_NUM" )] public decimal? PaperRowNum { get; set; } /// <summary> /// ä¸å¼ æ¡ç çº¸ä¸æ¡ç åæ° ///</summary> [SugarColumn(ColumnName="PAPER_COLUMN_NUM" )] public decimal? PaperColumnNum { get; set; } /// <summary> /// æ¡ç æµæ°´å·å¾ªç¯ç±»å(æ§å¶æ¡ç æµæ°´å·) ///</summary> [SugarColumn(ColumnName="CYCLE_TYPE" )] public string CycleType { get; set; } /// <summary> /// æ¯å¦ææ(0-æ æ,1-ææ) ///</summary> [SugarColumn(ColumnName="AVAILABLE_FLAG" )] public decimal? AvailableFlag { get; set; } /// <summary> /// æ¡ç é«åº¦ ///</summary> [SugarColumn(ColumnName="BARCODE_HEIGHT" )] public decimal? BarcodeHeight { get; set; } /// <summary> /// æ¡ç å使¹å ///</summary> [SugarColumn(ColumnName="BARCODE_ORIENTATION" )] public string BarcodeOrientation { get; set; } /// <summary> /// æ¡ç æå°æ³¨éè¡(1-æå°ï¼0-䏿å°) ///</summary> [SugarColumn(ColumnName="BARCODE_INTERPRETATION" )] public decimal? BarcodeInterpretation { get; set; } /// <summary> /// æ¡ç æå°æ³¨éè¡æå¨æ¡ç 䏿¹(1-æå°å¨æ¡ç 䏿¹ï¼0-䏿å°å¨æ¡ç 䏿¹) ///</summary> [SugarColumn(ColumnName="BARCODE_INTERPRETATION_ABOVE" )] public decimal? BarcodeInterpretationAbove { get; set; } /// <summary> /// å建人 ///</summary> [SugarColumn(ColumnName="CREATE_BY" )] public string CreateBy { get; set; } /// <summary> /// å建æ¶é´ ///</summary> [SugarColumn(ColumnName="CREATE_DATE" )] public DateTime? CreateDate { get; set; } /// <summary> /// æåæ´æ°äºº ///</summary> [SugarColumn(ColumnName="LASTUPDATE_BY" )] public string LastupdateBy { get; set; } /// <summary> /// æåæ´æ°æ¶é´ ///</summary> [SugarColumn(ColumnName="LASTUPDATE_DATE" )] public DateTime? LastupdateDate { get; set; } /// <summary> /// æ¡ç 宽度 ///</summary> [SugarColumn(ColumnName="BARCODE_WIDTH" )] public decimal? BarcodeWidth { get; set; } /// <summary> /// [æ¹åæ¡ç é»è®¤åæ°]模åï¼çªæ¡ï¼å®½ ///</summary> [SugarColumn(ColumnName="BY_W" )] public decimal? ByW { get; set; } /// <summary> /// [æ¹åæ¡ç é»è®¤åæ°]宽æ¡ä¸çªæ¡çæ¯ä¾ ///</summary> [SugarColumn(ColumnName="BY_R" )] public decimal? ByR { get; set; } /// <summary> /// [æ¹åæ¡ç é»è®¤åæ°]æ¡ç é«åº¦ ///</summary> [SugarColumn(ColumnName="BY_H" )] public decimal? ByH { get; set; } /// <summary> /// ç¹æ°/毫米 ///</summary> [SugarColumn(ColumnName="JM" )] public string Jm { get; set; } /// <summary> /// èææ°æ®æ å¿(1-æ¯ï¼0ï¼å¦) ///</summary> [SugarColumn(ColumnName="JVM_DATA_FLAG" )] public decimal? JvmDataFlag { get; set; } /// <summary> /// èææ°æ®æµæ°´å·ä½æ° ///</summary> [SugarColumn(ColumnName="JVM_SERIAL_DIGIT" )] public decimal? JvmSerialDigit { get; set; } /// <summary> /// èææ°æ®æ¡ç é¿åº¦ ///</summary> [SugarColumn(ColumnName="JVM_BARCODE_LENGTH" )] public decimal? JvmBarcodeLength { get; set; } /// <summary> /// æå°å½ä»¤ ///</summary> [SugarColumn(ColumnName="PRINT_COMMAND" )] public string PrintCommand { get; set; } /// <summary> /// æå°å½ä»¤å¼å§ ///</summary> [SugarColumn(ColumnName="PRINT_COMMAND_BEGIN" )] public string PrintCommandBegin { get; set; } /// <summary> /// æå°å½ä»¤ç»æ ///</summary> [SugarColumn(ColumnName="PRINT_COMMAND_END" )] public string PrintCommandEnd { get; set; } /// <summary> /// æ¡ç 注éè¡æ° ///</summary> [SugarColumn(ColumnName="BARCODE_INTERPRETATION_ROW" )] public decimal? BarcodeInterpretationRow { get; set; } /// <summary> /// æ¡ç å¼å¸¦ç©æç¼ç ///</summary> [SugarColumn(ColumnName="BARCODE_ITEM" )] public decimal? BarcodeItem { get; set; } /// <summary> /// æ¡ç ç±»åç¼ç ///</summary> [SugarColumn(ColumnName="TYPE_CODE" )] public decimal TypeCode { get; set; } /// <summary> /// æ¯å¦ä½¿ç¨ ///</summary> [SugarColumn(ColumnName="ISUSED" )] public short? Isused { get; set; } /// <summary> /// æå°æ¨¡æ¿ ///</summary> [SugarColumn(ColumnName="MBTYPE" )] public decimal? Mbtype { get; set; } /// <summary> /// ååç¼ç ///</summary> [SugarColumn(ColumnName="FACTORY" )] public string Factory { get; set; } /// <summary> /// å ¬å¸ä»£ç ///</summary> [SugarColumn(ColumnName="COMPANY" )] public string Company { get; set; } /// <summary> /// æµæ°´å·ä½æ° ///</summary> [SugarColumn(ColumnName="ORDER_NUM" )] public decimal? OrderNum { get; set; } } } MES.Service/Modes/MesRfPrnbarcode.cs
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,155 @@ using SqlSugar; namespace MES.Service.Modes { /// <summary> /// æææ¡ç æå°æå表 ///</summary> [SugarTable("MES_RF_PRNBARCODE")] public class MesRfPrnbarcode { /// <summary> /// ID ///</summary> [SugarColumn(ColumnName = "ID")] public decimal? Id { get; set; } /// <summary> /// æå°é¡ºåº ///</summary> [SugarColumn(ColumnName = "FORDER")] public string? Forder { get; set; } /// <summary> /// æå°ä»½æ° ///</summary> [SugarColumn(ColumnName = "FNO")] public string? Fno { get; set; } /// <summary> /// åæ®µ1 ///</summary> [SugarColumn(ColumnName = "STRP1")] public string? Strp1 { get; set; } /// <summary> /// åæ®µ2 ///</summary> [SugarColumn(ColumnName = "STRP2")] public string? Strp2 { get; set; } /// <summary> /// åæ®µ3 ///</summary> [SugarColumn(ColumnName = "STRP3")] public string? Strp3 { get; set; } /// <summary> /// åæ®µ4 ///</summary> [SugarColumn(ColumnName = "STRP4")] public string? Strp4 { get; set; } /// <summary> /// åæ®µ5 ///</summary> [SugarColumn(ColumnName = "STRP5")] public string? Strp5 { get; set; } /// <summary> /// åæ®µ6 ///</summary> [SugarColumn(ColumnName = "STRP6")] public string? Strp6 { get; set; } /// <summary> /// åæ®µ7 ///</summary> [SugarColumn(ColumnName = "STRP7")] public string? Strp7 { get; set; } /// <summary> /// åæ®µ8 ///</summary> [SugarColumn(ColumnName = "STRP8")] public string? Strp8 { get; set; } /// <summary> /// åæ®µ9 ///</summary> [SugarColumn(ColumnName = "STRP9")] public string? Strp9 { get; set; } /// <summary> /// åæ®µ10 ///</summary> [SugarColumn(ColumnName = "STRP10")] public string? Strp10 { get; set; } /// <summary> /// åæ®µ11 ///</summary> [SugarColumn(ColumnName = "STRP11")] public string? Strp11 { get; set; } /// <summary> /// åæ®µ12 ///</summary> [SugarColumn(ColumnName = "STRP12")] public string? Strp12 { get; set; } /// <summary> /// åæ®µ13 ///</summary> [SugarColumn(ColumnName = "STRP13")] public string? Strp13 { get; set; } /// <summary> /// åæ®µ14 ///</summary> [SugarColumn(ColumnName = "STRP14")] public string? Strp14 { get; set; } /// <summary> /// åæ®µ15 ///</summary> [SugarColumn(ColumnName = "STRP15")] public string? Strp15 { get; set; } /// <summary> /// åæ®µ16 ///</summary> [SugarColumn(ColumnName = "STRP16")] public string? Strp16 { get; set; } /// <summary> /// åæ®µ17 ///</summary> [SugarColumn(ColumnName = "STRP17")] public string? Strp17 { get; set; } /// <summary> /// åæ®µ18 ///</summary> [SugarColumn(ColumnName = "STRP18")] public string? Strp18 { get; set; } /// <summary> /// åæ®µ19 ///</summary> [SugarColumn(ColumnName = "STRP19")] public string? Strp19 { get; set; } /// <summary> /// åæ®µ20 ///</summary> [SugarColumn(ColumnName = "STRP20")] public string? Strp20 { get; set; } /// <summary> /// çææ¶é´ ///</summary> [SugarColumn(ColumnName = "CREATE_DATE")] public DateTime? CreateDate { get; set; } } } MES.Service/service/BasicData/MesItemsManager.cs
@@ -1,5 +1,6 @@ using Castle.Core.Resource; using MES.Service.DB; using MES.Service.Dto.service; using MES.Service.Dto.webApi; using MES.Service.Modes; using SqlSugar; @@ -8,6 +9,14 @@ public class MesItemsManager : Repository<MesItems> { public MesItems GetItemQcPrint(WarehouseQuery query) { return Db.Queryable<MesItems>() .Where(c => c.Factory == query.Factory && c.Company == query.Company && c.ItemNo == query.ItemNo).First(); } public bool Save(ErpItems item) { var entity = GetMesItems(item); MES.Service/service/Warehouse/OrganizeService.cs
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,261 @@ using System.Data; using MES.Service.DB; using MES.Service.Dto.service; using MES.Service.Modes; using SqlSugar; using DbType = System.Data.DbType; namespace MES.Service.service.Warehouse; public class OrganizeService : RepositoryNoEntity { public List<Organize> GetOrganizes() { return Db.Queryable<Organize>() .GroupBy(s => new { s.Fname, s.Fnumber }).Select<Organize>(s => new Organize { Fname = s.Fname, Fnumber = s.Fnumber, Id = SqlFunc.AggregateMax(s.Id) }).ToList(); } public List<MesRfPrnbarcode> GetBarcodeQcok(WarehouseQuery query) { var printCommandResult = Db.Queryable<MesBarcodeType>() .Where(t => t.TypeCode == 108) .First(); if (printCommandResult == null) { throw new Exception("模çID为空ï¼è¯·è®¾ç½®æå°æ ¼å¼ï¼"); } var cPrintCommand = printCommandResult.Mbtype; var cBid = printCommandResult.Id; var cMesItems = Db.Queryable<MesItems>() .Where(s => s.ItemNo == query.ItemNo && s.Factory == "1000" && s.Company == "1000") .First(); if (cMesItems == null) { throw new Exception("ç©æä¿¡æ¯ä¸åå¨è¯¥ç©æç¼ç ï¼è¯·ç»´æ¤ï¼"); } if (string.IsNullOrEmpty(query.ItemNo)) { throw new Exception("请å½å ¥ç©æç¼ç "); } if (string.IsNullOrEmpty(query.ItemModel)) { throw new Exception("请è¾å ¥å®ç©æç¼ç åï¼ç¹å»ç¡®è®¤çæè§æ ¼ï¼"); } if (string.IsNullOrEmpty(query.OrgName)) { throw new Exception("请å½å ¥ç»ç»"); } if (string.IsNullOrEmpty(query.OrgOwner)) { throw new Exception("请å½å ¥è´§ä¸»"); } if (string.IsNullOrEmpty(query.ItemNum)) { throw new Exception("请å½å ¥ç©ææ°é"); } if (string.IsNullOrEmpty(query.Printnumn)) { throw new Exception("请å½å ¥æ¡ç æ°é"); } var cId = Db.Ado.GetInt( "SELECT F_GETSEQNEXTVALUE('MES_RF_PRNBARCODE') FROM DUAL"); string itemBarcode = null; try { Db.Ado.BeginTran(); //å é¤10天åçèµæï¼é²æ¢è¡¨è¿å¤§ Db.Deleteable<MesRfPrnbarcode>() .Where(it => it.CreateDate < DateTime.Now.AddDays(-10)) .ExecuteCommand(); for (int i = 1; i <= int.Parse(query.Printnumn); i++) { var cIndate = DateTime.Now.ToString("yyyyMMdd"); string serial = null; string poBarcodeComand = null; string cBarcode2 = null; if (Db.Ado.GetInt( "SELECT GETSYSLOOKUPVALUE('1000', '1000', 'ItemBarcodeType') FROM DUAL") == 0) { var barcodeResult = SpGetBarcode2("1000", "1000", cBid, query.ItemNo + cIndate, query.ItemNo + cIndate, 0); serial = barcodeResult.Value; poBarcodeComand = barcodeResult.Msg; if (!string.IsNullOrEmpty(poBarcodeComand)) { return null; } cBarcode2 = "9" + serial.Substring(1); itemBarcode = query.ItemNo + cIndate + cBarcode2; } else { itemBarcode = Db.Queryable<MesInvItemBarcodes>() .Where(s => s.LotNo == cIndate && s.ItemNo == query.ItemNo && s.TrLotno == cIndate && s.Mblnr == null && s.Memo == "åå§åºå" && s.Factory == "1000" && s.Company == "1000") .Select(s => s.ItemBarcode) .First(); if (string.IsNullOrEmpty(itemBarcode)) { var barcodeResult = SpGetBarcode2("1000", "1000", cBid, query.ItemNo + cIndate, query.ItemNo + cIndate, 0); serial = barcodeResult.Value; poBarcodeComand = barcodeResult.Msg; if (!string.IsNullOrEmpty(poBarcodeComand)) { return null; } cBarcode2 = "9" + serial.Substring(1); itemBarcode = query.ItemNo + cIndate + cBarcode2; } } var poBarcode = itemBarcode; // Check if barcode exists var cCount = Db.Queryable<MesInvItemBarcodes>() .Where(s => s.ItemBarcode == itemBarcode && s.Factory == "1000" && s.Company == "1000") .Count(); if (cCount == 0) { // Insert new barcode Db.Insertable(new MesInvItemBarcodes { ItemBarcode = poBarcode, ItemNo = query.ItemNo, Quantity = int.Parse(query.ItemNum), CreateBy = query.userName, CreateDate = DateTime.Now, LastupdateBy = query.userName, LastupdateDate = DateTime.Now, ItemSname = cMesItems.ItemName, Factory = "1000", Company = "1000", LotDate = DateTime.Now.ToString("yyyy-MM-dd"), Memo = "åå§åºå", OrgName = query.OrgName, OrgOwner = query.OrgOwner }).ExecuteCommand(); } // Insert record into MES_RF_PRNBARCODE Db.Insertable(new MesRfPrnbarcode { Id = cId, Forder = "1", Fno = "1", CreateDate = DateTime.Now, Strp1 = poBarcode, Strp3 = query.ItemNo, Strp4 = query.ItemName ?? " ", Strp5 = query.ItemNum + " " + cMesItems.ItemUnit, Strp6 = DateTime.ParseExact(cIndate, "yyyyMMdd", null) .ToString("yyyy-MM-dd"), Strp7 = query.ItemModel ?? " ", Strp8 = poBarcode, Strp9 = query.ItemModel ?? " ", Strp10 = poBarcode, Strp11 = poBarcode, Strp12 = query.ItemName ?? " ", Strp15 = query.OrgName ?? " ", Strp16 = query.OrgOwner ?? " ", }).ExecuteCommand(); } Db.Ado.CommitTran(); } catch (Exception ex) { Db.Ado.RollbackTran(); throw new Exception("æ¥é" + ex.Message); } return Db.Queryable<MesRfPrnbarcode>() .Where(s => s.Id == cId).ToList(); } private dynamic SpGetBarcode2(string p0, string p1, decimal cBid, string cItemNo, string cIndate, int p5) { try { // å®ä¹è¾åºåæ° var outputResult = new SugarParameter("PO_VALUE", null, DbType.Int32, ParameterDirection.Output, 4000); var outputMessage = new SugarParameter("PO_MSG", null, DbType.String, ParameterDirection.Output, 4000); // å®ä¹è¾å ¥åæ° var parameters = new List<SugarParameter> { new("PI_FACTORY", p0, DbType.String, ParameterDirection.Input), new("PI_COMPANY", p1, DbType.String, ParameterDirection.Input), new("P_BARCODE_TYPE_ID", cBid, DbType.String, ParameterDirection.Input), new("P_TASK_NO", cItemNo, DbType.String, ParameterDirection.Input), new("P_TASK_ITEM", cIndate, DbType.String, ParameterDirection.Input), new("P_IF_COMMIT", p5, DbType.String, ParameterDirection.Input), outputResult, outputMessage }; // ä½¿ç¨ SqlSugar æ§è¡åå¨è¿ç¨ Db.Ado.ExecuteCommand( "BEGIN SP_GET_BARCODE2(:PI_FACTORY, :PI_COMPANY, :P_BARCODE_TYPE_ID, :P_TASK_NO, :P_TASK_ITEM, :P_IF_COMMIT, :PO_VALUE, :PO_MSG); END;", parameters.ToArray()); // è·åè¾åºåæ°çå¼ var resultValue = outputResult.Value?.ToString(); var messageValue = outputMessage.Value?.ToString(); dynamic m = new System.Dynamic.ExpandoObject(); m.Value = resultValue; m.Msg = messageValue; return m; } catch (Exception ex) { throw new Exception(ex.Message); } } } MESApplication/Controllers/BasicData/MesItemsController.cs
@@ -1,4 +1,5 @@ using System.Dynamic; using MES.Service.Dto.service; using MES.Service.Dto.webApi; using MES.Service.Modes; using MES.Service.service; @@ -21,6 +22,29 @@ private readonly string TableName = "MES_ITEMS"; private readonly string URL = "http://localhost:10054/api/MesItems/"; //GetItemQcPrint [HttpPost("GetItemQcPrint")] public ResponseResult GetItemQcPrint(WarehouseQuery query) { try { dynamic resultInfos = new ExpandoObject(); var save = m.GetItemQcPrint(query); resultInfos.tbBillList = save; return new ResponseResult { status = 0, message = "OK", data = resultInfos }; } catch (Exception ex) { return ResponseResult.ResponseError(ex); } } [HttpPost("Save")] public ResponseResult Save(ErpItems unit) MESApplication/Controllers/Warehouse/OrganizeController.cs
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,54 @@ using System.Dynamic; using MES.Service.Dto.service; using MES.Service.service.Warehouse; using MES.Service.util; using Microsoft.AspNetCore.Mvc; namespace MESApplication.Controllers.Warehouse; [ApiController] [Route("api/[controller]")] public class OrganizeController : ControllerBase { private readonly OrganizeService m = new(); [HttpPost("GetOrganizes")] public ResponseResult GetOrganizes() { try { dynamic resultInfos = new ExpandoObject(); resultInfos.tbBillList = m.GetOrganizes(); return new ResponseResult { status = 0, message = "OK", data = resultInfos }; } catch (Exception ex) { return ResponseResult.ResponseError(ex); } } [HttpPost("GetBarcodeQcok")] public ResponseResult GetBarcodeQcok(WarehouseQuery query) { try { dynamic resultInfos = new ExpandoObject(); resultInfos.tbBillList = m.GetBarcodeQcok(query); return new ResponseResult { status = 0, message = "OK", data = resultInfos }; } catch (Exception ex) { return ResponseResult.ResponseError(ex); } } } MESApplication/Startup.cs
@@ -111,7 +111,7 @@ app.UseEndpoints(endpoints => { endpoints.MapControllers(); }); ////////////////////////// /////////////////////////// } }