Controllers/Warehouse/MesItemBlController.cs
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,374 @@ using System.Dynamic; using Microsoft.AspNetCore.Mvc; using NewPdaSqlServer.Dto.service; using NewPdaSqlServer.entity; using NewPdaSqlServer.service.Warehouse; using NewPdaSqlServer.util; namespace NewPdaSqlServer.Controllers.Warehouse; /// <summary> /// ç产补æç¸å ³æ¥å£ /// </summary> [Route("api/[controller]")] [ApiController] public class MesItemBlController : ControllerBase { private readonly MesItemBlManager _manager = new(); /***è¿å ¥æ¨¡ç管çå¯ä»¥ä¿®æ¹æ¨¡ç***/ /// <summary> /// è·åææ /// </summary> /// <returns></returns> [HttpPost("GetList")] public ResponseResult GetList() { try { dynamic resultInfos = new ExpandoObject(); resultInfos.tbBillList = _manager.GetList(); return new ResponseResult { status = 0, message = "OK", data = resultInfos }; } catch (Exception ex) { return ResponseResult.ResponseError(ex); } } /// <summary> /// æ ¹æ®ä¸»é®è·å /// </summary> /// <returns></returns> [HttpPost("GetById")] public ResponseResult GetById(int id) { try { dynamic resultInfos = new ExpandoObject(); resultInfos.tbBillList = _manager.GetById(id); return new ResponseResult { status = 0, message = "OK", data = resultInfos }; } catch (Exception ex) { return ResponseResult.ResponseError(ex); } } /// <summary> /// æ ¹æ®ä¸»é®å é¤ /// </summary> /// <returns></returns> [HttpPost("DeleteByIds")] public ResponseResult DeleteByIds([FromBody] object[] ids) { try { dynamic resultInfos = new ExpandoObject(); resultInfos.tbBillList = _manager.DeleteByIds(ids); return new ResponseResult { status = 0, message = "OK", data = resultInfos }; } catch (Exception ex) { return ResponseResult.ResponseError(ex); } } /// <summary> /// æ·»å /// </summary> /// <returns></returns> [HttpPost("Insert")] public ResponseResult Add([FromBody] MesItemBl data) { try { dynamic resultInfos = new ExpandoObject(); resultInfos.tbBillList = _manager.Insert(data); return new ResponseResult { status = 0, message = "OK", data = resultInfos }; } catch (Exception ex) { return ResponseResult.ResponseError(ex); } } /// <summary> /// æ·»å è¿åèªå¢ /// </summary> /// <returns></returns> [HttpPost("InsertReturnIdentity")] public ResponseResult InsertReturnIdentity([FromBody] MesItemBl data) { try { dynamic resultInfos = new ExpandoObject(); resultInfos.tbBillList = _manager.InsertReturnIdentity(data); return new ResponseResult { status = 0, message = "OK", data = resultInfos }; } catch (Exception ex) { return ResponseResult.ResponseError(ex); } } /// <summary> /// ä¿®æ¹ /// </summary> /// <returns></returns> [HttpPost("Update")] public ResponseResult Update([FromBody] MesItemBl data) { try { dynamic resultInfos = new ExpandoObject(); resultInfos.tbBillList = _manager.Update(data); return new ResponseResult { status = 0, message = "OK", data = resultInfos }; } catch (Exception ex) { return ResponseResult.ResponseError(ex); } } #region ç产补æ /// <summary> /// è·åç产补æåå·å表 /// </summary> /// <returns>è¡¥æåå·å表</returns> /// <response code="200">æåè·åè¡¥æåå·å表</response> /// <response code="400">è·å失败</response> [HttpPost("GetSCBLBillNo")] public ResponseResult GetSCBLBillNo() { try { dynamic resultInfos = new ExpandoObject(); resultInfos.tbBillList = _manager.GetSCBLBillNo(); return new ResponseResult { status = 0, message = "OK", data = resultInfos }; } catch (Exception ex) { return ResponseResult.ResponseError(ex); } } /// <summary> /// æ ¹æ®åå·è·åç产补æåæç» /// </summary> /// <param name="query">æ¥è¯¢åæ°ï¼å¿ é¡»å å«billNo</param> /// <returns>è¡¥æåæç»å表</returns> /// <remarks> /// 请æ±ç¤ºä¾: /// /// POST /api/MesItemBl/GetMesItemBlDetailByBillNo /// { /// "billNo": "BL202401010001" /// } /// </remarks> /// <response code="200">æåè·åè¡¥æåæç»</response> /// <response code="400">è·å失败ï¼å¯è½æ¯åæ®å·ä¸å卿已宿</response> [HttpPost("GetMesItemBlDetailByBillNo")] public ResponseResult GetMesItemBlDetailByBillNo([FromBody] WarehouseQuery query) { try { dynamic resultInfos = new ExpandoObject(); resultInfos.tbBillList = _manager.GetMesItemBlDetailByBillNo(query); return new ResponseResult { status = 0, message = "OK", data = resultInfos }; } catch (Exception ex) { return ResponseResult.ResponseError(ex); } } /// <summary> /// æ«ææ¡ç /// </summary> /// <param name="query">æ¥è¯¢åæ°</param> /// <returns>æ«æç»æåå¾ å¤çå表</returns> /// <remarks> /// 请æ±ç¤ºä¾: /// /// POST /api/MesItemBl/SctlScanBarcode /// { /// "billNo": "WO202401010001", /// "barcode": "1234567890", /// "userName": "admin", /// "blNo": "BL202401010001" /// } /// </remarks> /// <response code="200">æ«ææå</response> /// <response code="400">æ«æå¤±è´¥ï¼è¿åå ·ä½é误信æ¯</response> [HttpPost("SctlScanBarcode")] public ResponseResult SctlScanBarcode([FromBody] WarehouseQuery query) { try { dynamic resultInfos = new ExpandoObject(); var (success, pendingList) = _manager.SctlScanBarcode(query); resultInfos.success = success; resultInfos.pendingList = pendingList; return new ResponseResult { status = 0, message = "OK", data = resultInfos }; } catch (Exception ex) { return ResponseResult.ResponseError(ex); } } #endregion #region çäº§è¶ é¢ /// <summary> /// è·åçäº§è¶ é¢åå·å表 /// </summary> /// <returns>è¶ é¢åå·å表</returns> /// <response code="200">æåè·åè¶ é¢åå·å表</response> /// <response code="400">è·å失败</response> [HttpPost("GetSccList")] public ResponseResult GetSccList() { try { dynamic resultInfos = new ExpandoObject(); resultInfos.tbBillList = _manager.GetSccList(); return new ResponseResult { status = 0, message = "OK", data = resultInfos }; } catch (Exception ex) { return ResponseResult.ResponseError(ex); } } /// <summary> /// è·åçäº§è¶ é¢åæç» /// </summary> /// <param name="query">æ¥è¯¢åæ°ï¼å¿ é¡»å å«billNo</param> /// <returns>è¶ é¢åæç»å表</returns> /// <remarks> /// 请æ±ç¤ºä¾: /// /// POST /api/MesItemBl/GetMesItemBlDetailBySccBillNo /// { /// "billNo": "SC202401010001" /// } /// </remarks> /// <response code="200">æåè·åè¶ é¢åæç»</response> /// <response code="400">è·å失败ï¼è¿åå ·ä½é误信æ¯</response> [HttpPost("GetMesItemBlDetailBySccBillNo")] public ResponseResult GetMesItemBlDetailBySccBillNo([FromBody] WarehouseQuery query) { try { dynamic resultInfos = new ExpandoObject(); resultInfos.tbBillList = _manager.GetMesItemBlDetailBySccBillNo(query); return new ResponseResult { status = 0, message = "OK", data = resultInfos }; } catch (Exception ex) { return ResponseResult.ResponseError(ex); } } /// <summary> /// çäº§è¶ é¢æ«ææ¡ç /// </summary> /// <param name="query">æ¥è¯¢åæ°</param> /// <returns>æ«æç»æåå¾ å¤çå表</returns> /// <remarks> /// 请æ±ç¤ºä¾: /// /// POST /api/MesItemBl/ScanBarcodeForOverPicking /// { /// "billNo": "WO202401010001", /// "barcode": "1234567890", /// "userName": "admin", /// "blNo": "SC202401010001" /// } /// </remarks> /// <response code="200">æ«ææå</response> /// <response code="400">æ«æå¤±è´¥ï¼è¿åå ·ä½é误信æ¯</response> [HttpPost("ScanBarcodeForOverPicking")] public ResponseResult ScanBarcodeForOverPicking([FromBody] WarehouseQuery query) { try { dynamic resultInfos = new ExpandoObject(); var (success, pendingList) = _manager.ScanBarcodeForOverPicking(query); resultInfos.success = success; resultInfos.pendingList = pendingList; return new ResponseResult { status = 0, message = "OK", data = resultInfos }; } catch (Exception ex) { return ResponseResult.ResponseError(ex); } } #endregion } Controllers/Warehouse/MesItemBlDetailController.cs
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,162 @@ using System.Dynamic; using Microsoft.AspNetCore.Mvc; using NewPdaSqlServer.entity; using NewPdaSqlServer.service.Warehouse; using NewPdaSqlServer.util; namespace NewPdaSqlServer.Controllers.Warehouse; [ApiController] [Route("api/[controller]")] public class MesItemBlDetailController : ControllerBase { private readonly MesItemBlDetailManager m = new(); /***è¿å ¥æ¨¡ç管çå¯ä»¥ä¿®æ¹æ¨¡ç***/ /// <summary> /// è·åææ /// </summary> /// <returns></returns> [HttpPost("GetList")] public ResponseResult GetList() { try { dynamic resultInfos = new ExpandoObject(); resultInfos.tbBillList = m.GetList(); return new ResponseResult { status = 0, message = "OK", data = resultInfos }; } catch (Exception ex) { return ResponseResult.ResponseError(ex); } } /// <summary> /// æ ¹æ®ä¸»é®è·å /// </summary> /// <returns></returns> [HttpPost("GetById")] public ResponseResult GetById(int id) { try { dynamic resultInfos = new ExpandoObject(); resultInfos.tbBillList = m.GetById(id); return new ResponseResult { status = 0, message = "OK", data = resultInfos }; } catch (Exception ex) { return ResponseResult.ResponseError(ex); } } /// <summary> /// æ ¹æ®ä¸»é®å é¤ /// </summary> /// <returns></returns> [HttpPost("DeleteByIds")] public ResponseResult DeleteByIds([FromBody] object[] ids) { try { dynamic resultInfos = new ExpandoObject(); resultInfos.tbBillList = m.DeleteByIds(ids); return new ResponseResult { status = 0, message = "OK", data = resultInfos }; } catch (Exception ex) { return ResponseResult.ResponseError(ex); } } /// <summary> /// æ·»å /// </summary> /// <returns></returns> [HttpPost("Insert")] public ResponseResult Add([FromBody] MesItemBlDetail data) { try { dynamic resultInfos = new ExpandoObject(); resultInfos.tbBillList = m.Insert(data); return new ResponseResult { status = 0, message = "OK", data = resultInfos }; } catch (Exception ex) { return ResponseResult.ResponseError(ex); } } /// <summary> /// æ·»å è¿åèªå¢ /// </summary> /// <returns></returns> [HttpPost("InsertReturnIdentity")] public ResponseResult InsertReturnIdentity([FromBody] MesItemBlDetail data) { try { dynamic resultInfos = new ExpandoObject(); resultInfos.tbBillList = m.InsertReturnIdentity(data); return new ResponseResult { status = 0, message = "OK", data = resultInfos }; } catch (Exception ex) { return ResponseResult.ResponseError(ex); } } /// <summary> /// ä¿®æ¹ /// </summary> /// <returns></returns> [HttpPost("Update")] public ResponseResult Update([FromBody] MesItemBlDetail data) { try { dynamic resultInfos = new ExpandoObject(); resultInfos.tbBillList = m.Update(data); return new ResponseResult { status = 0, message = "OK", data = resultInfos }; } catch (Exception ex) { return ResponseResult.ResponseError(ex); } } } Controllers/Warehouse/MesItemTblController.cs
@@ -8,9 +8,8 @@ namespace NewPdaSqlServer.Controllers.Warehouse; /// <summary> /// ç产éæç¸å ³æ¥å£ /// ç产éæç¸å ³æ¥å£ /// </summary> [Route("api/[controller]")] [ApiController] public class MesItemTblController : ControllerBase @@ -166,7 +165,7 @@ // æ°å¢çæ¹æ³ /// <summary> /// è·åç产éæåå·å表 /// è·åç产éæåå·å表 /// </summary> /// <returns>éæåå·å表</returns> [HttpPost("GetSCTLBillNo")] @@ -190,12 +189,13 @@ } /// <summary> /// æ ¹æ®åå·è·åç产éæåæç» /// æ ¹æ®åå·è·åç产éæåæç» /// </summary> /// <param name="query">æ¥è¯¢åæ°</param> /// <returns>éæåæç»å表</returns> [HttpPost("GetMesItemTblDetailByBillNo")] public ResponseResult GetMesItemTblDetailByBillNo([FromBody] WarehouseQuery query) public ResponseResult GetMesItemTblDetailByBillNo( [FromBody] WarehouseQuery query) { try { @@ -215,7 +215,7 @@ } /// <summary> /// æ«æåºä½ /// æ«æåºä½ /// </summary> /// <param name="query">æ¥è¯¢åæ°</param> /// <returns>åºä½ä¿¡æ¯</returns> @@ -240,7 +240,7 @@ } /// <summary> /// æ«ææ¡ç /// æ«ææ¡ç /// </summary> /// <param name="query">æ¥è¯¢åæ°</param> /// <returns>æ«æç»æ</returns> Dto/service/PendingMaterialDto.cs
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,32 @@ namespace NewPdaSqlServer.Dto.service; /// <summary> /// å¾ å¤çç©æä¿¡æ¯DTO /// </summary> public class PendingMaterialDto { /// <summary> /// åºä½ç¼ç /// </summary> public string SectionCode { get; set; } /// <summary> /// ç©æç¼å· /// </summary> public string ItemNo { get; set; } /// <summary> /// ç©æåç§° /// </summary> public string ItemName { get; set; } /// <summary> /// ç©æè§æ ¼ /// </summary> public string ItemSpec { get; set; } /// <summary> /// å¾ å¤çæ°é /// </summary> public decimal PendingQty { get; set; } } Dto/service/WarehouseQuery.cs
@@ -4,6 +4,7 @@ public class WarehouseQuery : Page { public string? blNo { get; set; } //è¡¥æåå· public string? id { get; set; } public string? sectionCode { get; set; } public string? barcode { get; set; } entity/MesInvBusiness2.cs
@@ -9,250 +9,249 @@ public class MesInvBusiness2 { /// <summary> /// ID(seq_inv_id) /// é»è®¤å¼: (newid()) ///</summary> /// ID(seq_inv_id) /// é»è®¤å¼: (newid()) /// </summary> [SugarColumn(ColumnName = "guid", IsPrimaryKey = true)] public Guid Guid { get; set; } /// <summary> /// ç¶æ|0-æªäº¤æ1-已交æ ///</summary> /// ç¶æ|0-æªäº¤æ1-已交æ /// </summary> [SugarColumn(ColumnName = "STATUS")] public long? Status { get; set; } /// <summary> /// åæ®ç±»åID ///</summary> /// åæ®ç±»åID /// </summary> [SugarColumn(ColumnName = "BILL_TYPE_ID")] public long? BillTypeId { get; set; } /// <summary> /// äºå¡ç±»åç¼ç ///</summary> /// äºå¡ç±»åç¼ç /// </summary> [SugarColumn(ColumnName = "TRANSACTION_CODE")] public string? TransactionCode { get; set; } /// <summary> /// 交æç±»å|1-å ¥åº0-转åº-1åºåº ///</summary> /// 交æç±»å|1-å ¥åº0-转åº-1åºåº /// </summary> [SugarColumn(ColumnName = "BUSINESS_TYPE")] public long? BusinessType { get; set; } /// <summary> /// åæ®ID ///</summary> /// åæ®ID /// </summary> [SugarColumn(ColumnName = "BILL_ID")] public long? BillId { get; set; } /// <summary> /// åæ®ç¼ç ///</summary> /// åæ®ç¼ç /// </summary> [SugarColumn(ColumnName = "BILL_NO")] public string? BillNo { get; set; } /// <summary> /// ç产订åå· ///</summary> /// ç产订åå· /// </summary> [SugarColumn(ColumnName = "TASK_NO")] public string? TaskNo { get; set; } /// <summary> /// 客æ·ç¼å· ///</summary> /// 客æ·ç¼å· /// </summary> [SugarColumn(ColumnName = "CUSTOMER_NO")] public string? CustomerNo { get; set; } /// <summary> /// åæ®è¡ID ///</summary> /// åæ®è¡ID /// </summary> [SugarColumn(ColumnName = "BILL_LINE_ID")] public long? BillLineId { get; set; } /// <summary> /// ç©ææ¡ç ///</summary> /// ç©ææ¡ç /// </summary> [SugarColumn(ColumnName = "ITEM_BARCODE")] public string? ItemBarcode { get; set; } /// <summary> /// æ¬å¸ç©æç¼ç ///</summary> /// æ¬å¸ç©æç¼ç /// </summary> [SugarColumn(ColumnName = "ITEM_NO")] public string? ItemNo { get; set; } /// <summary> /// 客æ·ç©æç¼ç ///</summary> /// 客æ·ç©æç¼ç /// </summary> [SugarColumn(ColumnName = "C_ITEM_CODE")] public string? CItemCode { get; set; } /// <summary> /// åå®¶æ¹æ¬¡ ///</summary> /// åå®¶æ¹æ¬¡ /// </summary> [SugarColumn(ColumnName = "LOT_NO")] public string? LotNo { get; set; } /// <summary> /// æ¯å¦ç¯ä¿(0:å¦,1:æ¯) ///</summary> /// æ¯å¦ç¯ä¿(0:å¦,1:æ¯) /// </summary> [SugarColumn(ColumnName = "EP_FLAG")] public bool? EpFlag { get; set; } /// <summary> /// æ°é ///</summary> /// æ°é /// </summary> [SugarColumn(ColumnName = "QUANTITY")] public decimal? Quantity { get; set; } /// <summary> /// æºååºCODE ///</summary> /// æºååºCODE /// </summary> [SugarColumn(ColumnName = "FROM_INV_DEPOTS_CODE")] public string? FromInvDepotsCode { get; set; } /// <summary> /// æºè´§ä½CODE ///</summary> /// æºè´§ä½CODE /// </summary> [SugarColumn(ColumnName = "FROM_INV_DEPOT_SECTIONS_CODE")] public string? FromInvDepotSectionsCode { get; set; } /// <summary> /// ç®çååºCODE ///</summary> /// ç®çååºCODE /// </summary> [SugarColumn(ColumnName = "TO_INV_DEPOTS_CODE")] public string? ToInvDepotsCode { get; set; } /// <summary> /// ç®çè´§ä½CODE ///</summary> /// ç®çè´§ä½CODE /// </summary> [SugarColumn(ColumnName = "TO_INV_DEPOT_SECTIONS_CODE")] public string? ToInvDepotSectionsCode { get; set; } /// <summary> /// 交æå¼å¸¸ä¿¡æ¯ ///</summary> /// 交æå¼å¸¸ä¿¡æ¯ /// </summary> [SugarColumn(ColumnName = "DESCRIPTION")] public string? Description { get; set; } /// <summary> /// å建人 ///</summary> /// å建人 /// </summary> [SugarColumn(ColumnName = "CREATE_BY")] public string? CreateBy { get; set; } /// <summary> /// å建æ¶é´ ///</summary> /// å建æ¶é´ /// </summary> [SugarColumn(ColumnName = "CREATE_DATE")] public DateTime? CreateDate { get; set; } /// <summary> /// æåæ´æ°äºº ///</summary> /// æåæ´æ°äºº /// </summary> [SugarColumn(ColumnName = "LASTUPDATE_BY")] public string? LastupdateBy { get; set; } /// <summary> /// æåæ´æ°æ¶é´ ///</summary> /// æåæ´æ°æ¶é´ /// </summary> [SugarColumn(ColumnName = "LASTUPDATE_DATE")] public DateTime? LastupdateDate { get; set; } /// <summary> /// è¶ æç»è®¡æ è¯ /// é»è®¤å¼: ((0)) ///</summary> /// è¶ æç»è®¡æ è¯ /// é»è®¤å¼: ((0)) /// </summary> [SugarColumn(ColumnName = "ULLAGE_STAT_FLAG")] public bool? UllageStatFlag { get; set; } /// <summary> /// ååç¼ç ///</summary> /// ååç¼ç /// </summary> [SugarColumn(ColumnName = "FACTORY")] public string? Factory { get; set; } /// <summary> /// å ¬å¸ä»£ç ///</summary> /// å ¬å¸ä»£ç /// </summary> [SugarColumn(ColumnName = "COMPANY")] public string? Company { get; set; } /// <summary> /// ç®±å·æ¡ç ///</summary> /// ç®±å·æ¡ç /// </summary> [SugarColumn(ColumnName = "ITEM_BARCODE2")] public string? ItemBarcode2 { get; set; } /// <summary> /// 塿¿æ¡ç ///</summary> /// 塿¿æ¡ç /// </summary> [SugarColumn(ColumnName = "ITEM_BARCODE3")] public string? ItemBarcode3 { get; set; } /// <summary> /// ä»»å¡åå· ///</summary> /// ä»»å¡åå· /// </summary> [SugarColumn(ColumnName = "WORK_NO")] public string? WorkNo { get; set; } /// <summary> /// ä»»å¡åè¡å· ///</summary> /// ä»»å¡åè¡å· /// </summary> [SugarColumn(ColumnName = "WORK_LINE")] public int? WorkLine { get; set; } /// <summary> /// ä¾åºå ///</summary> /// ä¾åºå /// </summary> [SugarColumn(ColumnName = "SUPP_NO")] public string? SuppNo { get; set; } /// <summary> /// ç产线 ///</summary> /// ç产线 /// </summary> [SugarColumn(ColumnName = "LINE_NO")] public string? LineNo { get; set; } /// <summary> /// éè´è®¢åid ///</summary> /// éè´è®¢åid /// </summary> [SugarColumn(ColumnName = "EBELN_K3ID")] public long? EbelnK3id { get; set; } /// <summary> /// éè´è®¢åè¡id ///</summary> /// éè´è®¢åè¡id /// </summary> [SugarColumn(ColumnName = "LINE_K3ID")] public long? LineK3id { get; set; } /// <summary> /// ç©æID ///</summary> /// ç©æID /// </summary> [SugarColumn(ColumnName = "ITEM_ID")] public long? ItemId { get; set; } /// <summary> /// ///</summary> /// </summary> [SugarColumn(ColumnName = "SUPP_ID")] public string? SuppId { get; set; } /// <summary> /// æºä»åºID ///</summary> /// æºä»åºID /// </summary> [SugarColumn(ColumnName = "FROM_DEPOT_ID")] public int? FromDepotId { get; set; } /// <summary> /// ç®çä»åºID ///</summary> /// ç®çä»åºID /// </summary> [SugarColumn(ColumnName = "INV_DEPOT_ID")] public int? InvDepotId { get; set; } /// <summary> /// mesåæ®æç»è¡id ///</summary> /// mesåæ®æç»è¡id /// </summary> [SugarColumn(ColumnName = "MES_LINE")] public Guid? MesLine { get; set; } } entity/MesInvItemBarcodes.cs
@@ -192,7 +192,7 @@ /// æ¹æ¬¡æ¥æ /// </summary> [SugarColumn(ColumnName = "LOT_DATE")] public string? LotDate { get; set; } public DateTime? LotDate { get; set; } /// <summary> /// æåæ¡ç @@ -411,7 +411,7 @@ /// é»è®¤å¼: ((0)) /// </summary> [SugarColumn(ColumnName = "COME_FLG")] public bool? ComeFlg { get; set; } public short? ComeFlg { get; set; } /// <summary> /// è¡å· entity/MesInvItemOutItems.cs
@@ -223,6 +223,11 @@ [SugarColumn(ColumnName = "item_dabid")] public int? ItemDabid { get; set; } /// <summary> /// åºè¯¥æ¯å°è´§æç»è¡¨çguid /// </summary> [SugarColumn(ColumnName = "about_Guid")] public Guid? AboutGuid { get; set; } [SugarColumn(IsIgnore = true)] public string? ItemName { get; set; } entity/MesItemBl.cs
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,155 @@ using SqlSugar; namespace NewPdaSqlServer.entity; /// <summary> /// </summary> [SugarTable("MES_ITEM_BL")] public class MesItemBl { /// <summary> /// ID /// </summary> [SugarColumn(ColumnName = "id", IsPrimaryKey = true)] public Guid Id { get; set; } /// <summary> /// è¡¥æåå· /// </summary> [SugarColumn(ColumnName = "bl_no")] public string BlNo { get; set; } /// <summary> /// ç产工å /// </summary> [SugarColumn(ColumnName = "bl001")] public string Bl001 { get; set; } /// <summary> /// 产åç¼å· /// </summary> [SugarColumn(ColumnName = "bl002")] public string Bl002 { get; set; } /// <summary> /// 产é /// </summary> [SugarColumn(ColumnName = "bl003")] public int? Bl003 { get; set; } /// <summary> /// ç³è¯·äºº /// </summary> [SugarColumn(ColumnName = "bl004")] public string Bl004 { get; set; } /// <summary> /// é¢ææ¥æ /// </summary> [SugarColumn(ColumnName = "bl005")] public DateTime? Bl005 { get; set; } /// <summary> /// å®¡æ ¸æ¥æ /// </summary> [SugarColumn(ColumnName = "bl006")] public DateTime? Bl006 { get; set; } /// <summary> /// è¡¥æåå /// </summary> [SugarColumn(ColumnName = "bl007")] public string Bl007 { get; set; } /// <summary> /// åºåºç±»å«ï¼è¡¥æ,è¶ é¢ï¼ /// </summary> [SugarColumn(ColumnName = "bl008")] public string Bl008 { get; set; } /// <summary> /// ä¸å¡ç±»å /// </summary> [SugarColumn(ColumnName = "bl009")] public string Bl009 { get; set; } /// <summary> /// åæä» /// </summary> [SugarColumn(ColumnName = "bl010")] public string Bl010 { get; set; } /// <summary> /// è¡¥æé¨é¨ /// </summary> [SugarColumn(ColumnName = "bl011")] public string Bl011 { get; set; } /// <summary> /// è¡¥æäº§çº¿ /// </summary> [SugarColumn(ColumnName = "bl012")] public string Bl012 { get; set; } /// <summary> /// ä»»å¡åå· /// </summary> [SugarColumn(ColumnName = "bl013")] public string Bl013 { get; set; } /// <summary> /// 产ååç§° /// </summary> [SugarColumn(ColumnName = "bl014")] public string Bl014 { get; set; } /// <summary> /// 产ååå· /// </summary> [SugarColumn(ColumnName = "bl015")] public string Bl015 { get; set; } /// <summary> /// å®¡æ ¸äºº /// </summary> [SugarColumn(ColumnName = "bl016")] public string Bl016 { get; set; } /// <summary> /// ä¸å¡ç±»åç¼ç /// </summary> [SugarColumn(ColumnName = "bl017")] public string Bl017 { get; set; } /// <summary> /// å®¡æ ¸ç¶æ /// é»è®¤å¼: ((0)) /// </summary> [SugarColumn(ColumnName = "bl018")] public bool? Bl018 { get; set; } /// <summary> /// å®ç»æ è¯ /// é»è®¤å¼: ((0)) /// </summary> [SugarColumn(ColumnName = "bl019")] public bool? Bl019 { get; set; } /// <summary> /// 产åid /// </summary> [SugarColumn(ColumnName = "item_id")] public int? ItemId { get; set; } /// <summary> /// å®æäºº /// </summary> [SugarColumn(ColumnName = "wc_user")] public string WcUser { get; set; } /// <summary> /// 宿æ¶é´ /// </summary> [SugarColumn(ColumnName = "wc_time")] public string WcTime { get; set; } } entity/MesItemBlDetail.cs
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,143 @@ using SqlSugar; namespace NewPdaSqlServer.entity; /// <summary> /// </summary> [SugarTable("MES_ITEM_BL_DETAIL")] public class MesItemBlDetail { /// <summary> /// ID /// </summary> [SugarColumn(ColumnName = "id", IsPrimaryKey = true)] public Guid Id { get; set; } /// <summary> /// MID /// </summary> [SugarColumn(ColumnName = "mid")] public Guid? Mid { get; set; } /// <summary> /// å·¥åå· /// </summary> [SugarColumn(ColumnName = "bld001")] public string Bld001 { get; set; } /// <summary> /// ç©æç¼å· /// </summary> [SugarColumn(ColumnName = "bld002")] public string Bld002 { get; set; } /// <summary> /// ç©æåç§° /// </summary> [SugarColumn(ColumnName = "bld003")] public string Bld003 { get; set; } /// <summary> /// è§æ ¼åå· /// </summary> [SugarColumn(ColumnName = "bld004")] public string Bld004 { get; set; } /// <summary> /// é¢è² /// </summary> [SugarColumn(ColumnName = "bld005")] public string Bld005 { get; set; } /// <summary> /// è®¡åæ°é /// </summary> [SugarColumn(ColumnName = "bld006")] public int? Bld006 { get; set; } /// <summary> /// ç³è¯·æ°é /// </summary> [SugarColumn(ColumnName = "bld007")] public int? Bld007 { get; set; } /// <summary> /// 已颿°é /// é»è®¤å¼: ((0)) /// </summary> [SugarColumn(ColumnName = "bld008")] public int? Bld008 { get; set; } /// <summary> /// åä½ /// </summary> [SugarColumn(ColumnName = "bld009")] public string Bld009 { get; set; } /// <summary> /// 夿³¨ /// </summary> [SugarColumn(ColumnName = "bld010")] public string Bld010 { get; set; } /// <summary> /// å®ç»æ è¯ /// é»è®¤å¼: ((0)) /// </summary> [SugarColumn(ColumnName = "bld011")] public int? Bld011 { get; set; } /// <summary> /// ç©æid /// </summary> [SugarColumn(ColumnName = "bld012")] public int? Bld012 { get; set; } /// <summary> /// 项次 /// </summary> [SugarColumn(ColumnName = "bld013")] public int? Bld013 { get; set; } /// <summary> /// ERPææåè¡id /// </summary> [SugarColumn(ColumnName = "bld014")] public int? Bld014 { get; set; } /// <summary> /// </summary> [SugarColumn(ColumnName = "bld015")] public string Bld015 { get; set; } /// <summary> /// </summary> [SugarColumn(ColumnName = "bld016")] public string Bld016 { get; set; } /// <summary> /// </summary> [SugarColumn(ColumnName = "bld017")] public string Bld017 { get; set; } /// <summary> /// </summary> [SugarColumn(ColumnName = "bld018")] public string Bld018 { get; set; } /// <summary> /// </summary> [SugarColumn(ColumnName = "bld019")] public string Bld019 { get; set; } /// <summary> /// </summary> [SugarColumn(ColumnName = "bld020")] public string Bld020 { get; set; } /// <summary> /// å ³èçdabè¡¨ä¸»é® /// </summary> [SugarColumn(ColumnName = "dabGuid")] public Guid? DabGuid { get; set; } } entity/MesItemTblDetail.cs
@@ -95,11 +95,9 @@ [SugarColumn(ColumnName = "tld012")] public int? Tld012 { get; set; } [SugarColumn(IsIgnore = true)] public string? BillNo { get; set; } [SugarColumn(IsIgnore = true)] public string? BillNo { get; set; } [SugarColumn(IsIgnore = true)] public string? ItemNo { get; set; } [SugarColumn(IsIgnore = true)] public string? ItemNo { get; set; } /// <summary> /// ç©æåç§° @@ -107,6 +105,5 @@ [SugarColumn(IsIgnore = true)] public string? ItemName { get; set; } [SugarColumn(IsIgnore = true)] public string ItemModel { get; set; } [SugarColumn(IsIgnore = true)] public string ItemModel { get; set; } } entity/Womdaa.cs
@@ -8,403 +8,418 @@ public class Womdaa { /// <summary> /// é»è®¤å¼: (newid()) /// </summary> [SugarColumn(ColumnName = "guid")] public Guid? Guid { get; set; } /// /// é»è®¤å¼: (newid()) ///</summary> [SugarColumn(ColumnName = "guid", IsPrimaryKey = true)] public Guid Guid { get; set; } /// <summary> /// </summary> /// ///</summary> [SugarColumn(ColumnName = "pbaGuid")] public Guid? PbaGuid { get; set; } /// <summary> /// </summary> /// ///</summary> [SugarColumn(ColumnName = "caaGuid")] public Guid? CaaGuid { get; set; } /// <summary> /// èªå¢å /// </summary> /// èªå¢å ///</summary> [SugarColumn(ColumnName = "id")] public int? Id { get; set; } /// <summary> /// æäº§ID /// </summary> /// æäº§ID ///</summary> [SugarColumn(ColumnName = "pid")] public int? Pid { get; set; } /// <summary> /// åå· /// </summary> /// åå· ///</summary> [SugarColumn(ColumnName = "daa001")] public string Daa001 { get; set; } public string? Daa001 { get; set; } /// <summary> /// 产åID /// </summary> /// 产åID ///</summary> [SugarColumn(ColumnName = "daa002")] public string Daa002 { get; set; } public string? Daa002 { get; set; } /// <summary> /// 产ååç§° /// </summary> /// 产ååç§° ///</summary> [SugarColumn(ColumnName = "daa003")] public string Daa003 { get; set; } public string? Daa003 { get; set; } /// <summary> /// 产åè§æ ¼ /// </summary> /// 产åè§æ ¼ ///</summary> [SugarColumn(ColumnName = "daa004")] public string Daa004 { get; set; } public string? Daa004 { get; set; } /// <summary> /// åä½ /// </summary> /// åä½ ///</summary> [SugarColumn(ColumnName = "daa005")] public string Daa005 { get; set; } public string? Daa005 { get; set; } /// <summary> /// ERPé¢è®¡å¼å·¥æ¶é´ /// </summary> /// ERPé¢è®¡å¼å·¥æ¶é´ ///</summary> [SugarColumn(ColumnName = "daa006")] public DateTime? Daa006 { get; set; } /// <summary> /// ERPé¢è®¡å®å·¥æ¶é´ /// </summary> /// ERPé¢è®¡å®å·¥æ¶é´ ///</summary> [SugarColumn(ColumnName = "daa007")] public DateTime? Daa007 { get; set; } /// <summary> /// 工忰é /// </summary> /// 工忰é ///</summary> [SugarColumn(ColumnName = "daa008")] public int? Daa008 { get; set; } /// <summary> /// 夿³¨ /// </summary> /// 夿³¨ ///</summary> [SugarColumn(ColumnName = "daa009")] public string Daa009 { get; set; } public string? Daa009 { get; set; } /// <summary> /// å ¥åºæ°é /// </summary> /// å ¥åºæ°é ///</summary> [SugarColumn(ColumnName = "daa010")] public int? Daa010 { get; set; } /// <summary> /// å·²ç产é /// </summary> /// å·²ç产é ///</summary> [SugarColumn(ColumnName = "daa011")] public int? Daa011 { get; set; } /// <summary> /// æ¥åºæ°é /// </summary> /// æ¥åºæ°é ///</summary> [SugarColumn(ColumnName = "daa012")] public int? Daa012 { get; set; } /// <summary> /// å·¥ä½è½¦é´ /// </summary> /// å·¥ä½è½¦é´ ///</summary> [SugarColumn(ColumnName = "daa013")] public string Daa013 { get; set; } public string? Daa013 { get; set; } /// <summary> /// ææååå· /// </summary> /// ææååå· ///</summary> [SugarColumn(ColumnName = "daa014")] public string Daa014 { get; set; } public string? Daa014 { get; set; } /// <summary> /// çäº§çº¿å« /// </summary> /// çäº§çº¿å« ///</summary> [SugarColumn(ColumnName = "daa015")] public string Daa015 { get; set; } public string? Daa015 { get; set; } /// <summary> /// å®é å¼å·¥æ¥ /// </summary> /// å®é å¼å·¥æ¥ ///</summary> [SugarColumn(ColumnName = "daa016")] public DateTime? Daa016 { get; set; } /// <summary> /// å®é å®å·¥æ¥ /// </summary> /// å®é å®å·¥æ¥ ///</summary> [SugarColumn(ColumnName = "daa017")] public DateTime? Daa017 { get; set; } /// <summary> /// å·¥åç¶æ /// </summary> /// å·¥åç¶æ ///</summary> [SugarColumn(ColumnName = "daa018")] public string Daa018 { get; set; } public string? Daa018 { get; set; } /// <summary> /// é½å¥ç¶æ /// </summary> /// é½å¥ç¶æ ///</summary> [SugarColumn(ColumnName = "daa019")] public string Daa019 { get; set; } public string? Daa019 { get; set; } /// <summary> /// å®¡æ ¸ç /// </summary> /// å®¡æ ¸ç ///</summary> [SugarColumn(ColumnName = "fstatus")] public int? Fstatus { get; set; } /// <summary> /// å®¡æ ¸æ¥æ /// </summary> /// å®¡æ ¸æ¥æ ///</summary> [SugarColumn(ColumnName = "check_date")] public DateTime? CheckDate { get; set; } /// <summary> /// å®¡æ ¸äºº /// </summary> /// å®¡æ ¸äºº ///</summary> [SugarColumn(ColumnName = "check_user")] public string CheckUser { get; set; } public string? CheckUser { get; set; } /// <summary> /// 线å«ç¼ç /// </summary> /// 线å«ç¼ç ///</summary> [SugarColumn(ColumnName = "daa020")] public string Daa020 { get; set; } public string? Daa020 { get; set; } /// <summary> /// ä»»å¡ååå· /// </summary> /// ä»»å¡ååå· ///</summary> [SugarColumn(ColumnName = "daa021")] public string Daa021 { get; set; } public string? Daa021 { get; set; } /// <summary> /// éç¥å¤æï¼0-æªéç¥ï¼1-éç¥ /// é»è®¤å¼: ((0)) /// </summary> /// éç¥å¤æï¼0-æªéç¥ï¼1-éç¥ /// é»è®¤å¼: ((0)) ///</summary> [SugarColumn(ColumnName = "daa022")] public int? Daa022 { get; set; } /// <summary> /// ç产åºå· /// </summary> /// ç产åºå· ///</summary> [SugarColumn(ColumnName = "daa023")] public int? Daa023 { get; set; } /// <summary> /// æäº§æ¥æ /// </summary> /// æäº§æ¥æ ///</summary> [SugarColumn(ColumnName = "daa024")] public string Daa024 { get; set; } public string? Daa024 { get; set; } /// <summary> /// é¦ä»¶æ¯å¦æ£éª1-æ£éªï¼0æªæ£éª /// </summary> /// é¦ä»¶æ¯å¦æ£éª1-æ£éªï¼0æªæ£éª ///</summary> [SugarColumn(ColumnName = "daa025")] public string Daa025 { get; set; } public string? Daa025 { get; set; } /// <summary> /// é¦ä»¶æ£éªç»æ /// </summary> /// é¦ä»¶æ£éªç»æ ///</summary> [SugarColumn(ColumnName = "daa026")] public string Daa026 { get; set; } public string? Daa026 { get; set; } /// <summary> /// å·²æ¥æ£ï¼0-æªæ¥æ£ï¼1-å·²æ¥æ£ /// </summary> /// å·²æ¥æ£ï¼0-æªæ¥æ£ï¼1-å·²æ¥æ£ ///</summary> [SugarColumn(ColumnName = "is_reportcheck")] public int? IsReportcheck { get; set; } /// <summary> /// æ¥æ£äºº /// </summary> /// æ¥æ£äºº ///</summary> [SugarColumn(ColumnName = "usname")] public string Usname { get; set; } public string? Usname { get; set; } /// <summary> /// æ¥æ£æ¶é´ /// </summary> /// æ¥æ£æ¶é´ ///</summary> [SugarColumn(ColumnName = "reporttime")] public DateTime? Reporttime { get; set; } /// <summary> /// æºå°ç¼å· /// </summary> /// æºå°ç¼å· ///</summary> [SugarColumn(ColumnName = "machine_no")] public string MachineNo { get; set; } public string? MachineNo { get; set; } /// <summary> /// 夿宿1-宿ï¼0æªå®æ /// </summary> /// 夿宿1-宿ï¼0æªå®æ ///</summary> [SugarColumn(ColumnName = "daa027")] public int? Daa027 { get; set; } /// <summary> /// 夿宿æ¶é´ /// </summary> /// 夿宿æ¶é´ ///</summary> [SugarColumn(ColumnName = "daa028")] public string Daa028 { get; set; } public string? Daa028 { get; set; } /// <summary> /// æ åå·¥æ¶ /// </summary> /// æ åå·¥æ¶ ///</summary> [SugarColumn(ColumnName = "prod_hour")] public int? ProdHour { get; set; } /// <summary> /// åäººå°æ¶äº§è½ /// </summary> /// åäººå°æ¶äº§è½ ///</summary> [SugarColumn(ColumnName = "person_hour_capacity")] public int? PersonHourCapacity { get; set; } /// <summary> /// ç论æ 产 /// </summary> /// ç论æ 产 ///</summary> [SugarColumn(ColumnName = "the_capacity")] public int? TheCapacity { get; set; } /// <summary> /// 计åç¨äººæ° /// </summary> /// 计åç¨äººæ° ///</summary> [SugarColumn(ColumnName = "plan_personnel")] public int? PlanPersonnel { get; set; } /// <summary> /// è®¡åæ åäº§è½ /// </summary> /// è®¡åæ åäº§è½ ///</summary> [SugarColumn(ColumnName = "plan_capacity")] public int? PlanCapacity { get; set; } /// <summary> /// çè®ºç¨æ¶/M /// </summary> /// çè®ºç¨æ¶/M ///</summary> [SugarColumn(ColumnName = "the_min")] public int? TheMin { get; set; } /// <summary> /// çè®ºç¨æ¶/H /// </summary> /// çè®ºç¨æ¶/H ///</summary> [SugarColumn(ColumnName = "the_hour")] public int? TheHour { get; set; } /// <summary> /// 线ä½ç±»å« /// </summary> /// 线ä½ç±»å« ///</summary> [SugarColumn(ColumnName = "line_type")] public string LineType { get; set; } public string? LineType { get; set; } /// <summary> /// æ åäººæ° /// </summary> /// æ åäººæ° ///</summary> [SugarColumn(ColumnName = "personnel")] public int? Personnel { get; set; } /// <summary> /// æ¢çº¿æ¶é´ /// </summary> /// æ¢çº¿æ¶é´ ///</summary> [SugarColumn(ColumnName = "change_line_time")] public int? ChangeLineTime { get; set; } /// <summary> /// 伿¯æ¶é´ /// </summary> /// 伿¯æ¶é´ ///</summary> [SugarColumn(ColumnName = "rest_time")] public int? RestTime { get; set; } /// <summary> /// æäº§åºå· /// </summary> /// æäº§åºå· ///</summary> [SugarColumn(ColumnName = "schedule_order")] public int? ScheduleOrder { get; set; } /// <summary> /// MESé¢è®¡å¼å·¥æ¶é´ /// </summary> /// MESé¢è®¡å¼å·¥æ¶é´ ///</summary> [SugarColumn(ColumnName = "mes_start_prod")] public DateTime? MesStartProd { get; set; } /// <summary> /// MESé¢è®¡å®å·¥æ¶é´ /// </summary> /// MESé¢è®¡å®å·¥æ¶é´ ///</summary> [SugarColumn(ColumnName = "mes_end_prod")] public DateTime? MesEndProd { get; set; } /// <summary> /// æäº§æ¨éæ è¯ /// </summary> /// æäº§æ¨éæ è¯ ///</summary> [SugarColumn(ColumnName = "prodts")] public int? Prodts { get; set; } /// <summary> /// é¢è®¡å¤ææ¶é´ /// </summary> /// é¢è®¡å¤ææ¶é´ ///</summary> [SugarColumn(ColumnName = "prepare_time")] public DateTime? PrepareTime { get; set; } /// <summary> /// æä»¶æå ¥äººæ° /// </summary> /// æä»¶æå ¥äººæ° ///</summary> [SugarColumn(ColumnName = "cj_worker")] public int? CjWorker { get; set; } /// <summary> /// æä»¶è®¡åæå ¥äººæ° /// </summary> /// æä»¶è®¡åæå ¥äººæ° ///</summary> [SugarColumn(ColumnName = "p_cj_worker")] public int? PCjWorker { get; set; } /// <summary> /// æä»¶æ¥äº§é /// </summary> /// æä»¶æ¥äº§é ///</summary> [SugarColumn(ColumnName = "cj_daily_out")] public int? CjDailyOut { get; set; } /// <summary> /// æä»¶æ åå·¥æ¶ /// </summary> /// æä»¶æ åå·¥æ¶ ///</summary> [SugarColumn(ColumnName = "cj_std_hour")] public int? CjStdHour { get; set; } /// <summary> /// é¡çæå ¥äººæ° /// </summary> /// é¡çæå ¥äººæ° ///</summary> [SugarColumn(ColumnName = "hx_worker")] public int? HxWorker { get; set; } /// <summary> /// é¡ç计åæå ¥äººæ° /// </summary> /// é¡ç计åæå ¥äººæ° ///</summary> [SugarColumn(ColumnName = "p_hx_worker")] public int? PHxWorker { get; set; } /// <summary> /// é¡çæ¥äº§é /// </summary> /// é¡çæ¥äº§é ///</summary> [SugarColumn(ColumnName = "hx_daily_out")] public int? HxDailyOut { get; set; } /// <summary> /// é¡çæ åå·¥æ¶ /// </summary> /// é¡çæ åå·¥æ¶ ///</summary> [SugarColumn(ColumnName = "hx_std_hour")] public int? HxStdHour { get; set; } /// <summary> /// æä»¶æ°é /// </summary> /// æä»¶æ°é ///</summary> [SugarColumn(ColumnName = "cj_num")] public int? CjNum { get; set; } /// <summary> /// å®¢æ· /// </summary> /// å®¢æ· ///</summary> [SugarColumn(ColumnName = "cust")] public string Cust { get; set; } public string? Cust { get; set; } /// <summary> /// æ¯å¦é¦æ£ /// </summary> /// æ¯å¦é¦æ£ ///</summary> [SugarColumn(ColumnName = "IS_SJ")] public int? IsSj { get; set; } /// <summary> /// 产åç¼ç ///</summary> [SugarColumn(ColumnName = "daa029")] public string? Daa029 { get; set; } /// <summary> /// å®é 线ä½ç¼ç ///</summary> [SugarColumn(ColumnName = "sj_xt")] public string? SjXt { get; set; } } entity/Womdab.cs
@@ -8,228 +8,236 @@ public class Womdab { /// <summary> /// é»è®¤å¼: (newid()) /// </summary> /// /// é»è®¤å¼: (newid()) ///</summary> [SugarColumn(ColumnName = "guid", IsPrimaryKey = true)] public Guid Guid { get; set; } /// <summary> /// </summary> /// ///</summary> [SugarColumn(ColumnName = "daaGuid")] public Guid? DaaGuid { get; set; } /// <summary> /// èªå¢å /// </summary> /// èªå¢å ///</summary> [SugarColumn(ColumnName = "id")] public int? Id { get; set; } /// <summary> /// PID /// </summary> /// PID ///</summary> [SugarColumn(ColumnName = "pid")] public int? Pid { get; set; } /// <summary> /// å·¥ååå· /// </summary> /// å·¥ååå· ///</summary> [SugarColumn(ColumnName = "dab001")] public string? Dab001 { get; set; } /// <summary> /// åºå· /// </summary> /// åºå· ///</summary> [SugarColumn(ColumnName = "dab002")] public int? Dab002 { get; set; } /// <summary> /// ææç¼ç /// </summary> /// ææid ///</summary> [SugarColumn(ColumnName = "dab003")] public string? Dab003 { get; set; } /// <summary> /// ææåç§° /// </summary> /// ææåç§° ///</summary> [SugarColumn(ColumnName = "dab004")] public string? Dab004 { get; set; } /// <summary> /// ææè§æ ¼ /// </summary> /// ææè§æ ¼ ///</summary> [SugarColumn(ColumnName = "dab005")] public string? Dab005 { get; set; } /// <summary> /// éé¢ç¨é /// </summary> /// éé¢ç¨é ///</summary> [SugarColumn(ColumnName = "dab006")] public decimal? Dab006 { get; set; } /// <summary> /// å·²é¢ç¨é /// </summary> /// å·²é¢ç¨é ///</summary> [SugarColumn(ColumnName = "dab007")] public decimal? Dab007 { get; set; } /// <summary> /// å·¥èº /// </summary> /// å·¥èº ///</summary> [SugarColumn(ColumnName = "dab008")] public string? Dab008 { get; set; } /// <summary> /// åä½ /// </summary> /// åä½ ///</summary> [SugarColumn(ColumnName = "dab009")] public string? Dab009 { get; set; } /// <summary> /// ææç±»å /// </summary> /// ææç±»å ///</summary> [SugarColumn(ColumnName = "dab010")] public string? Dab010 { get; set; } /// <summary> /// 主æ /// </summary> /// 主æ ///</summary> [SugarColumn(ColumnName = "dab011")] public string? Dab011 { get; set; } /// <summary> /// ç»æç¨é /// </summary> /// ç»æç¨é ///</summary> [SugarColumn(ColumnName = "dab012")] public int? Dab012 { get; set; } /// <summary> /// åºæ° /// </summary> /// åºæ° ///</summary> [SugarColumn(ColumnName = "dab013")] public int? Dab013 { get; set; } /// <summary> /// æ¯å¦æ¿æ /// </summary> /// æ¯å¦æ¿æ ///</summary> [SugarColumn(ColumnName = "dab014")] public string? Dab014 { get; set; } /// <summary> /// ç¹ä½ /// </summary> /// ç¹ä½ ///</summary> [SugarColumn(ColumnName = "dab015")] public string? Dab015 { get; set; } /// <summary> /// ææåå· /// </summary> /// ææåå· ///</summary> [SugarColumn(ColumnName = "dab016")] public string? Dab016 { get; set; } /// <summary> /// ä»åºç¼ç /// </summary> /// ä»åºç¼ç ///</summary> [SugarColumn(ColumnName = "dab017")] public string? Dab017 { get; set; } /// <summary> /// ä»åºåç§° /// </summary> /// ä»åºåç§° ///</summary> [SugarColumn(ColumnName = "dab018")] public string? Dab018 { get; set; } /// <summary> /// 颿æ¹å¼ /// </summary> /// 颿æ¹å¼ ///</summary> [SugarColumn(ColumnName = "dab019")] public string? Dab019 { get; set; } /// <summary> /// åºå®æè /// </summary> /// åºå®æè ///</summary> [SugarColumn(ColumnName = "scrapqty")] public int? Scrapqty { get; set; } /// <summary> /// å卿èç /// </summary> /// å卿èç ///</summary> [SugarColumn(ColumnName = "scraprate")] public int? Scraprate { get; set; } /// <summary> /// ææåè¡id /// </summary> /// ææåè¡id ///</summary> [SugarColumn(ColumnName = "erpid")] public int? Erpid { get; set; } /// <summary> /// ææå头id /// </summary> /// ææå头id ///</summary> [SugarColumn(ColumnName = "eid")] public int? Eid { get; set; } /// <summary> /// å®é¢ç¨é /// é»è®¤å¼: ((0)) /// </summary> /// å®é¢ç¨é /// é»è®¤å¼: ((0)) ///</summary> [SugarColumn(ColumnName = "dab020")] public decimal? Dab020 { get; set; } /// <summary> /// è¡¥é¢æ°é /// é»è®¤å¼: ((0)) /// </summary> /// è¡¥é¢æ°é /// é»è®¤å¼: ((0)) ///</summary> [SugarColumn(ColumnName = "dab021")] public decimal? Dab021 { get; set; } /// <summary> /// éææ°é /// é»è®¤å¼: ((0)) /// </summary> /// éææ°é /// é»è®¤å¼: ((0)) ///</summary> [SugarColumn(ColumnName = "dab022")] public decimal? Dab022 { get; set; } /// <summary> /// è¶ é¢æ°é /// é»è®¤å¼: ((0)) /// </summary> /// è¶ é¢æ°é /// é»è®¤å¼: ((0)) ///</summary> [SugarColumn(ColumnName = "dab023")] public decimal? Dab023 { get; set; } /// <summary> /// è¯åéæ /// é»è®¤å¼: ((0)) /// </summary> /// è¯åéæ /// é»è®¤å¼: ((0)) ///</summary> [SugarColumn(ColumnName = "lp_tl")] public int? LpTl { get; set; } /// <summary> /// æ¥æä¸è¯ /// é»è®¤å¼: ((0)) /// </summary> /// æ¥æä¸è¯ /// é»è®¤å¼: ((0)) ///</summary> [SugarColumn(ColumnName = "ll_bl")] public int? LlBl { get; set; } /// <summary> /// ä½ä¸ä¸è¯ /// é»è®¤å¼: ((0)) /// </summary> /// ä½ä¸ä¸è¯ /// é»è®¤å¼: ((0)) ///</summary> [SugarColumn(ColumnName = "zy_bl")] public int? ZyBl { get; set; } /// <summary> /// åå¹¶æ è¯ /// é»è®¤å¼: ((0)) /// </summary> /// åå¹¶æ è¯ /// é»è®¤å¼: ((0)) ///</summary> [SugarColumn(ColumnName = "hb_flag")] public int? HbFlag { get; set; } /// <summary> /// åå¹¶åå· /// </summary> /// åå¹¶åå· ///</summary> [SugarColumn(ColumnName = "hb_no")] public string? HbNo { get; set; } /// <summary> /// ç©æç¼ç ///</summary> [SugarColumn(ColumnName = "dab024")] public string? Dab024 { get; set; } // å¨ææ·»å ç屿§ [SugarColumn(IsIgnore = true)] public decimal? wNum { get; set; } service/Warehouse/MesItemBlDetailManager.cs
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,11 @@ using NewPdaSqlServer.DB; using NewPdaSqlServer.entity; namespace NewPdaSqlServer.service.Warehouse; public class MesItemBlDetailManager : Repository<MesItemBlDetail> { //å½å类已ç»ç»§æ¿äº Repository å¢ãå ãæ¥ãæ¹çæ¹æ³ //è¿éé¢åç代ç ä¸ä¼ç»è¦ç,妿è¦éæ°çæè¯·å é¤ MesItemBlDetailManager.cs } service/Warehouse/MesItemBlManager.cs
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,1733 @@ using NewPdaSqlServer.DB; using NewPdaSqlServer.Dto.service; using NewPdaSqlServer.entity; using NewPdaSqlServer.util; using SqlSugar; namespace NewPdaSqlServer.service.Warehouse; public class MesItemBlManager : Repository<MesItemBl> { #region ç产补æ /// <summary> /// è·åç产补æåå·å表 /// </summary> /// <returns>è¡¥æåå·å表</returns> public List<string> GetSCBLBillNo() { var list = Db.Queryable<MesItemBl>() .Where(s => (s.Bl018 ?? false) == true && (s.Bl019 ?? false) == false && s.Bl008 == "ç产补æ") .Select(s => s.BlNo) .ToList(); return list; } /// <summary> /// æ ¹æ®åå·è·åç产补æåæç» prc_rf_pda_scan_zout_showbl /// </summary> /// <param name="billNo">è¡¥æåå·</param> /// <returns>è¡¥æåæç»å表</returns> public List<MesItemBlDetail> GetMesItemBlDetailByBillNo( WarehouseQuery query) { if (string.IsNullOrEmpty(query.billNo)) throw new Exception("请éåæ®å·ï¼"); // æ£æ¥è¡¥æåæ¯å¦åå¨ä¸ä¸ºç产补æç±»å var mesItemBl = Db.Queryable<MesItemBl>() .Where(a => a.BlNo == query.billNo && a.Bl008 == "ç产补æ") .First(); if (mesItemBl == null) throw new Exception("åæ®å·ä¸æ£ç¡®ï¼"); if (mesItemBl.Bl019 == true) throw new Exception("åæ®å·å·²å®æï¼"); // è·åæªå®æçè¡¥æåæç» var blDetails = Db.Queryable<MesItemBl, MesItemBlDetail>((a, b) => new JoinQueryInfos(JoinType.Left, a.Id == b.Mid)) .Where((a, b) => a.BlNo == query.billNo && (b.Bld007 ?? 0) - (b.Bld008 ?? 0) > 0) .Select((a, b) => new MesItemBlDetail { Bld012 = b.Bld012, Bld002 = b.Bld002, Bld003 = b.Bld003, Bld004 = b.Bld004, Bld007 = b.Bld007, Bld008 = b.Bld008 }) .ToList(); return blDetails; } /// <summary> /// æ«ææ¡ç prc_rf_pda_scan_zout_barcode3 /// </summary> /// <param name="query">æ¥è¯¢åæ°</param> /// <returns>æ«æç»æ</returns> /// <remarks> /// åæ°è¯´æ: /// - billNo: åæ®å·(å¿ å¡«) /// - barcode: æ¡ç (å¿ å¡«) /// - userName: ç¨æ·å /// - blNo: è¡¥æåå·(å¿ å¡«) /// </remarks> public (bool success, List<PendingMaterialDto> pendingList) SctlScanBarcode( WarehouseQuery query) { #region åæ°æ ¡éª if (string.IsNullOrEmpty(query.billNo)) throw new Exception("请éååæ®å·ï¼"); if (string.IsNullOrEmpty(query.barcode)) throw new Exception("è¯·æ«ææ¡ç ï¼"); if (string.IsNullOrEmpty(query.userName)) throw new Exception("ç¨æ·åä¸è½ä¸ºç©ºï¼"); if (string.IsNullOrEmpty(query.blNo)) throw new Exception("è¡¥æåå·ä¸è½ä¸ºç©ºï¼"); #endregion // æ£éªæ¯å¦é夿«æ var exists = Db.Queryable<MesInvItemOutCDetails>() .Where(b => b.ItemBarcode == query.barcode) .Any(); if (exists) throw new Exception("æ¤æ¡ç å·²æ«æ,å¿é夿«ç ï¼"); // æ¥è¯¢æ¡ç åºåä¿¡æ¯ var stockBarcode = Db.Queryable<MesInvItemStocks>() .Where(t => t.ItemBarcode == query.barcode && t.Quantity > 0) .First(); if (stockBarcode == null) throw new Exception($"åºå䏿 æ¤æ¡ç ,è¯·æ ¸å¯¹ï¼{query.barcode}"); // æ£æ¥è¡¥æåç¶æ var mesItemBl = Db.Queryable<MesItemBl>() .Where(a => a.BlNo == query.blNo && (a.Bl018 ?? false) == false) .First(); if (mesItemBl == null) throw new Exception($"ç³è¯·å {query.blNo} å·²æ¤åï¼"); if (mesItemBl.Bl018 != true) throw new Exception($"ç³è¯·å {query.blNo} æªå®¡æ ¸ï¼"); if (mesItemBl.Bl019 == true) throw new Exception($"ç³è¯·å {query.blNo} å·²å®ç»ï¼"); // è·åè¡¥æåæç»å¹¶æ ¡éª var blDetail = Db.Queryable<MesItemBlDetail>() .Where(b => b.Mid == mesItemBl.Id && b.Bld012 == stockBarcode.ItemId) .First(); if (blDetail == null) throw new Exception($"ç³è¯·åä¸å卿¤ç©æ {stockBarcode.ItemNo} 请确认ï¼"); // æ£æ¥å¾ è¡¥æ°é var quantity = (blDetail.Bld007 ?? 0) - (blDetail.Bld008 ?? 0); if (quantity == 0) throw new Exception("ç©æå·²æ«ç 宿ï¼è¯·æ ¸å¯¹ï¼"); // æ£æ¥å·¥åä¿¡æ¯ var womdaa = Db.Queryable<Womdaa>() .Where(a => a.Daa001 == query.billNo) .First(); if (womdaa == null) throw new Exception($"å·¥å {query.billNo} ä¸åå¨ï¼è¯·ç¡®è®¤ï¼"); // æ£æ¥å¤ææç» var womdab = Db.Queryable<Womdab>() .Where(b => b.Dab001 == query.billNo && b.Erpid == blDetail.Bld014) .First(); if (womdab == null) throw new Exception($"夿æç»ä¸å卿¤ç©æ {stockBarcode.ItemNo} 请确认ï¼"); if (stockBarcode.Quantity > quantity) { // è·åå¾ åææç»å表 var pendingList = Db.Queryable<MesItemBl, MesItemBlDetail>((a, b) => new JoinQueryInfos(JoinType.Left, a.Id == b.Mid)) .Where((a, b) => a.BlNo == query.blNo && (b.Bld007 ?? 0) - (b.Bld008 ?? 0) > 0) .Select((a, b) => new PendingMaterialDto { SectionCode = b.Bld012.ToString(), ItemNo = b.Bld002, ItemName = b.Bld003, ItemSpec = b.Bld004, PendingQty = (b.Bld007 ?? 0) - (b.Bld008 ?? 0) }) .ToList(); return (false, pendingList); } // å¼å¯äºå¡å¤ç var success = UseTransaction(db => { // è·åæå建åºåºå var outId = Guid.NewGuid(); var outNo = BillNo.GetBillNo("SCBL"); var existingOut = db.Queryable<MesInvItemOuts>() .Where(a => a.BbillNo == query.blNo && a.DepotCode == womdab.Dab017 && a.OutDate.Value.Date.ToString("yyyy-MM-dd") == DateTime.Now.Date.ToString("yyyy-MM-dd") && a.BillTypeId == 200 && a.TransactionNo == 209 && a.Status == 0) .First(); if (existingOut != null) { outId = existingOut.Guid; outNo = existingOut.ItemOutNo; } else { // æå ¥åºåºå主表 db.Insertable(new MesInvItemOuts { Guid = outId, ItemOutNo = outNo, TaskNo = query.blNo, CreateBy = query.userName, CreateDate = DateTime.Now, LastupdateBy = query.userName, LastupdateDate = DateTime.Now, BillTypeId = 200, TransactionNo = 209, Remark = mesItemBl.Bl007, DepotCode = womdab.Dab017, OutPart = womdaa.Daa013, FType = 0, Factory = stockBarcode.Factory, Company = stockBarcode.Company, WorkNo = womdaa.Daa021, BoardItem = womdaa.Daa002, PbillNo = womdaa.Daa001, OutDate = DateTime.Now, Status = 0, BbillNo = query.blNo }).IgnoreColumns(true).ExecuteCommand(); } // æ£æ¥å¹¶æ´æ°åºåºåç©ææç» var itemCount = db.Queryable<MesInvItemOutItems>() .Where(i => i.ItemOutId == outId && i.ItemId == stockBarcode.ItemId) .Count(); if (itemCount > 0) { // æ´æ°å·²åå¨çç©ææç»æ°é db.Updateable<MesInvItemOutItems>() .SetColumns(i => i.Quantity == i.Quantity + stockBarcode.Quantity) .Where(i => i.ItemOutId == outId && i.ItemId == stockBarcode.ItemId) .ExecuteCommand(); } else { // æå ¥æ°çç©ææç»è®°å½ db.Insertable(new MesInvItemOutItems { Guid = Guid.NewGuid(), ItemOutId = outId, ItemNo = blDetail.Bld002, Quantity = stockBarcode.Quantity, CreateBy = query.userName, CreateDate = DateTime.Now, LastupdateBy = query.userName, LastupdateDate = DateTime.Now, Factory = stockBarcode.Factory, Company = stockBarcode.Company, DepotCode = womdab.Dab017, TaskNo = query.blNo, WorkNo = womdaa.Daa021, WorkLine = blDetail.Bld013, ErpItemNo = womdab.Dab003, ErpId = womdab.Eid, ErpAutoid = womdab.Erpid, PbillNo = query.billNo, ItemId = blDetail.Bld012, // Unit = blDetail.Bld009, // DepotId = (int)stockBarcode.DepotsId }).IgnoreColumns(true).ExecuteCommand(); } // æå ¥åºåºåæ¡ç æç» db.Insertable(new MesInvItemOutCDetails { Guid = Guid.NewGuid(), ItemOutId = outId, ItemBarcode = stockBarcode.ItemBarcode, ItemNo = stockBarcode.ItemNo, LotNo = stockBarcode.LotNo, Quantity = stockBarcode.Quantity, ForceOutFlag = 0, CreateBy = query.userName, CreateDate = DateTime.Now, LastupdateBy = query.userName, LastupdateDate = DateTime.Now, DepotCode = stockBarcode.DepotsCode, DepotSectionCode = stockBarcode.DepotSectionsCode, Remark = blDetail.Bld010, Factory = stockBarcode.Factory, Company = stockBarcode.Company, TaskNoy = mesItemBl.Bl013, BoardStyle = mesItemBl.Bl002, TaskNo = query.blNo, WorkNo = blDetail.Bld001, WorkLine = blDetail.Bld013, SuppNo = stockBarcode.SuppNo, PbillNo = query.billNo, ItemId = blDetail.Bld012, Unit = blDetail.Bld009, DepotId = (int)stockBarcode.DepotsId, EbelnK3id = womdab.Eid, LineK3id = womdab.Erpid }).IgnoreColumns(true).ExecuteCommand(); // æå ¥ä¸å¡äº¤æè®°å½ db.Insertable(new MesInvBusiness2 { Guid = Guid.NewGuid(), Status = 1, BillTypeId = 200, // p_bill_type_id TransactionCode = "210", // p_transaction_no BusinessType = -1, ItemBarcode = stockBarcode.ItemBarcode, ItemNo = stockBarcode.ItemNo, LotNo = stockBarcode.LotNo, EpFlag = true, Quantity = stockBarcode.Quantity, FromInvDepotsCode = stockBarcode.DepotsCode, FromInvDepotSectionsCode = stockBarcode.DepotSectionsCode, CreateBy = query.userName, CreateDate = DateTime.Now, LastupdateBy = query.userName, LastupdateDate = DateTime.Now, Factory = stockBarcode.Factory, Company = stockBarcode.Company, TaskNo = mesItemBl.Bl012, // Matches C_QTCK.Bl012 BillNo = query.blNo, WorkNo = blDetail.Bld001, // Matches C_QTCK_D.Bld001 WorkLine = blDetail.Bld013, // Matches C_QTCK_D.Bld013 SuppNo = stockBarcode.SuppNo, ItemId = stockBarcode.ItemId, // CkDepot = stockBarcode.DepotsId }).IgnoreColumns(true).ExecuteCommand(); // æ´æ°å·¥å表æ°é db.Updateable<Womdab>() .SetColumns(it => new Womdab { Dab007 = (it.Dab007 ?? 0) + stockBarcode.Quantity, Dab020 = (it.Dab020 ?? 0) + stockBarcode.Quantity, Dab021 = (it.Dab021 ?? 0) + stockBarcode.Quantity }) .Where(it => it.Id == womdab.Id && it.Dab003 == womdab.Dab003) .ExecuteCommand(); // æ´æ°è¡¥æåæç»å·²è¡¥æ°é db.Updateable<MesItemBlDetail>() .SetColumns(it => new MesItemBlDetail { Bld008 = (it.Bld008 ?? 0) + (int)stockBarcode.Quantity }) .Where(it => it.Id == blDetail.Id) .ExecuteCommand(); // æ£æ¥è¡¥æåæç»æ¯å¦å®æ var blDetail1 = db.Queryable<MesItemBlDetail>() .Where(it => it.Id == blDetail.Id) .First(); if ((blDetail1.Bld007 ?? 0) <= (blDetail1.Bld008 ?? 0)) { // æ´æ°æç»å®æç¶æ db.Updateable<MesItemBlDetail>() .SetColumns(it => it.Bld011 == 1) .Where(it => it.Id == blDetail1.Id) .ExecuteCommand(); } // æ´æ°åºåæ°é为0 db.Updateable<MesInvItemStocks>() .SetColumns(it => it.Quantity == 0) .Where(it => it.Guid == stockBarcode.Guid) .ExecuteCommand(); // æ£æ¥æ¯å¦æææç»é½å·²å®æ var unfinishedDetail = db.Queryable<MesItemBlDetail>() .LeftJoin<MesItemBl>((b, a) => a.Id == b.Mid) .Where((b, a) => a.BlNo == query.blNo && (b.Bld011 ?? 0) == 0) .Select((b, a) => b) .First(); if (unfinishedDetail == null) { // å¦ææ²¡ææªå®æçæç»ï¼æ´æ°è¡¥æåç¶æä¸ºå·²å®æ db.Updateable<MesItemBl>() .SetColumns(it => new MesItemBl { Bl019 = true, WcUser = query.userName, WcTime = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss") }) .Where(it => it.Id == mesItemBl.Id) .ExecuteCommand(); } return 1; }); // è·åæç»çå¾ åææç»å表 var finalPendingList = Db.Queryable<MesItemBl, MesItemBlDetail>( (a, b) => new JoinQueryInfos(JoinType.Left, a.Id == b.Mid)) .Where((a, b) => a.BlNo == query.blNo && (b.Bld007 ?? 0) - (b.Bld008 ?? 0) > 0) .Select((a, b) => new PendingMaterialDto { SectionCode = b.Bld012.ToString(), ItemNo = b.Bld002, ItemName = b.Bld003, ItemSpec = b.Bld004, PendingQty = (b.Bld007 ?? 0) - (b.Bld008 ?? 0) }) .ToList(); return (true, finalPendingList); } /// <summary> /// ç产补æåæ¡ç æå prc_rf_pda_prnt_zout_barcode2 /// </summary> /// <param name="query">æ¥è¯¢åæ°</param> /// <returns>(æåæ å¿, å¾ å¤çå表)</returns> /// <remarks> /// åå°éè¦ä¼ å ¥çåæ°: /// - userName: ç¨æ·å(å¿ å¡«) /// - billNo: å·¥åå·(å¿ å¡«) /// - barcode: ç©ææ¡ç (å¿ å¡«) /// - Num: åææ°é(å¿ å¡«,å¿ é¡»å¤§äº0) /// - blNo: è¡¥æåå·(å¿ å¡«) /// </remarks> public (bool success, List<PendingMaterialDto> pendingList) SplitBarcode( WarehouseQuery query) { #region åæ°æ ¡éª if (string.IsNullOrEmpty(query.userName)) throw new Exception("ç¨æ·åä¸è½ä¸ºç©ºï¼"); if (string.IsNullOrEmpty(query.billNo)) throw new Exception("请éååæ®å·ï¼"); if (string.IsNullOrEmpty(query.barcode)) throw new Exception("è¯·æ«ææ¡ç ï¼"); if (query.Num <= 0) throw new Exception("请è¾å ¥æ£ç¡®çåææ°éï¼"); if (string.IsNullOrEmpty(query.blNo)) throw new Exception("è¡¥æåå·ä¸è½ä¸ºç©ºï¼"); #endregion // æ£éªæ¯å¦é夿«æ var exists = Db.Queryable<MesInvItemOutCDetails>() .Where(b => b.ItemBarcode == query.barcode) .Any(); if (exists) throw new Exception("æ¤æ¡ç å·²æ«æ,å¿é夿«ç ï¼"); // æ¥è¯¢æ¡ç åºåä¿¡æ¯ var stockBarcode = Db.Queryable<MesInvItemStocks>() .Where(t => t.ItemBarcode == query.barcode && t.Quantity > 0) .First(); if (stockBarcode == null) throw new Exception($"åºå䏿 æ¤æ¡ç ,è¯·æ ¸å¯¹ï¼{query.barcode}"); var totalQty = stockBarcode.Quantity; string newBarcode = null; // å¼å¯äºå¡å¤ç var success = UseTransaction(db => { var executeCommand = 0; // æåæ¡ç if (totalQty > query.Num) { var mesItems = db.Queryable<MesItems>() .Where(s => s.Id == stockBarcode.ItemId).First(); // çææ°æ¡ç å· newBarcode = BillNo.GetBillNo("TMBH(æ¡ç ç¼å·)", mesItems.ItemNo); // åå ¥æ°æ¡ç executeCommand += db.Insertable(new MesInvItemBarcodes { Guid = Guid.NewGuid(), ItemBarcode = newBarcode, CustNo = stockBarcode.CustomerNo, // ProductCode = stockBarcode.ProductCode, // ItemBarcode2 = stockBarcode.ItemBarcode2, // ItemCode = stockBarcode.ItemCode, ItemNo = stockBarcode.ItemNo, LotNo = stockBarcode.LotNo, Quantity = query.Num, EpFlag = true, TaskNo = stockBarcode.TaskNo, CreateBy = query.userName, CreateDate = DateTime.Now, LastupdateBy = query.userName, LastupdateDate = DateTime.Now, OldItemBarcode = query.barcode, // Mblnr = stockBarcode.Mblnr, // Zeile = stockBarcode.Zeile, // RohInId = stockBarcode.RohInId, // BarcodeStatus = 0, // OldQty = query.Num, // Unit = stockBarcode.Unit, // WeightUnit = stockBarcode.WeightUnit, Factory = stockBarcode.Factory, Company = stockBarcode.Company, BillNo = stockBarcode.BillNo, BoardStyle = stockBarcode.BoardStyle, // ColorName = stockBarcode.ColorName, WorkNo = stockBarcode.WorkNo, WorkLine = stockBarcode.WorkLine, // MemoBad = stockBarcode.MemoBad, ComeFlg = 5, // Memo = stockBarcode.Memo, SuppNo = stockBarcode.SuppNo, // InsDate = stockBarcode.InsDate, // Added InsDate ItemId = stockBarcode.ItemId, // ItemUnit = stockBarcode.ItemUnit // Added ItemUnit }).IgnoreColumns(true).ExecuteCommand(); // æ´æ°åæ¡ç æ°é executeCommand += db.Updateable<MesInvItemBarcodes>() .SetColumns(it => it.Quantity == totalQty - query.Num) .Where(it => it.ItemBarcode == query.barcode) .ExecuteCommand(); // å é¤åæ¡ç åºåè®°å½ executeCommand += db.Deleteable<MesInvItemStocks>() .Where(it => it.ItemBarcode == query.barcode) .ExecuteCommand(); // æå ¥å©ä½æ¡ç æ°éçæ°åºåè®°å½ executeCommand += db.Insertable(new MesInvItemStocks { Guid = Guid.NewGuid(), TaskNo = stockBarcode.TaskNo, ItemBarcode = stockBarcode.ItemBarcode, ItemNo = stockBarcode.ItemNo, LotNo = stockBarcode.LotNo, Quantity = totalQty - query.Num, EpFlag = stockBarcode.EpFlag, CustomerNo = stockBarcode.CustomerNo, ItemWt = stockBarcode.ItemWt, DepotsCode = stockBarcode.DepotsCode, DepotsId = stockBarcode.DepotsId, DepotSectionsCode = stockBarcode.DepotSectionsCode, CheckDate = stockBarcode.CheckDate, ItemType = stockBarcode.ItemType, IndepDate = stockBarcode.IndepDate, Factory = stockBarcode.Factory, Company = stockBarcode.Company, IqcStatus = stockBarcode.IqcStatus, BoardStyle = stockBarcode.BoardStyle, WorkNo = stockBarcode.WorkNo, WorkLine = stockBarcode.WorkLine, SuppNo = stockBarcode.SuppNo, ItemId = stockBarcode.ItemId, // UnitId = stockBarcode.ItemUnit }).IgnoreColumns(true).ExecuteCommand(); // åå ¥æ°æ¡ç ç交æè®°å½ executeCommand += db.Insertable(new MesInvBusiness2 { Guid = Guid.NewGuid(), Status = 1, BillTypeId = 200, // p_bill_type_id TransactionCode = "209", // p_transaction_no BusinessType = -1, ItemBarcode = newBarcode, ItemNo = stockBarcode.ItemNo, LotNo = stockBarcode.LotNo, EpFlag = true, Quantity = query.Num, FromInvDepotsCode = null, FromInvDepotSectionsCode = null, ToInvDepotsCode = stockBarcode.DepotsCode, ToInvDepotSectionsCode = stockBarcode.DepotSectionsCode, Description = null, CreateBy = query.userName, CreateDate = DateTime.Now, LastupdateBy = query.userName, LastupdateDate = DateTime.Now, Factory = stockBarcode.Factory, Company = stockBarcode.Company, TaskNo = stockBarcode.TaskNo, BillNo = stockBarcode.BillNo, WorkNo = stockBarcode.WorkNo, WorkLine = stockBarcode.WorkLine, SuppNo = stockBarcode.SuppNo, SuppId = stockBarcode.SuppId, ItemId = stockBarcode.ItemId, // CkDepot = stockBarcode.DepotsId }).IgnoreColumns(true).ExecuteCommand(); } else if (totalQty < query.Num) { throw new Exception("åææ°éå¤§äºæ¡ç æ°,è¯·æ ¸å¯¹ï¼"); } if (string.IsNullOrEmpty(newBarcode)) newBarcode = query.barcode; // æ£æ¥è¡¥æåç¶æ var mesItemBl = Db.Queryable<MesItemBl>() .Where(a => a.BlNo == query.blNo && (a.Bl018 ?? false) == false) .First(); if (mesItemBl == null) throw new Exception($"ç³è¯·å {query.blNo} å·²æ¤åï¼"); if (mesItemBl.Bl018 != true) throw new Exception($"ç³è¯·å {query.blNo} æªå®¡æ ¸ï¼"); if (mesItemBl.Bl019 == true) throw new Exception($"ç³è¯·å {query.blNo} å·²å®ç»ï¼"); // è·åè¡¥æåæç»å¹¶æ ¡éª var blDetail = Db.Queryable<MesItemBlDetail>() .Where(b => b.Mid == mesItemBl.Id && b.Bld012 == stockBarcode.ItemId) .First(); if (blDetail == null) throw new Exception($"ç³è¯·åä¸å卿¤ç©æ {stockBarcode.ItemNo} 请确认ï¼"); var remainingQty = (blDetail.Bld007 ?? 0) - (blDetail.Bld008 ?? 0); if (remainingQty == 0) throw new Exception("ç©æå·²æ«ç 宿ï¼è¯·æ ¸å¯¹ï¼"); if (query.Num > remainingQty) throw new Exception( $"æåæ°éï¼{query.Num} 大äºå¾ åææ°éï¼{remainingQty}ï¼è¯·æ ¸å¯¹ï¼"); // æ£æ¥å·¥åä¿¡æ¯ var womdaa = Db.Queryable<Womdaa>() .Where(a => a.Daa001 == query.billNo) .First(); if (womdaa == null) throw new Exception($"å·¥å {query.billNo} ä¸åå¨ï¼è¯·ç¡®è®¤ï¼"); var womdab = Db.Queryable<Womdab>() .Where(b => b.Dab001 == query.billNo && b.Erpid == blDetail.Bld014) .First(); if (womdab == null) throw new Exception($"夿æç»ä¸å卿¤ç©æ {stockBarcode.ItemNo} 请确认ï¼"); // æ£æ¥å·²åææ°éæ¯å¦è¶ è¿å¾ åææ°é var sumQty = db.Queryable<MesInvItemOutCDetails>() .Where(it => it.TaskNo == query.blNo && it.ItemId == stockBarcode.ItemId) .Sum(it => it.Quantity); if (sumQty > remainingQty) { throw new Exception($"æåæ°éï¼{sumQty} 大äºå¾ åææ°éï¼{remainingQty}ï¼è¯·æ ¸å¯¹ï¼"); } // è·åæå建åºåºå var itemOut = db.Queryable<MesInvItemOuts>() .Where(a => a.BbillNo == query.blNo && a.DepotCode == womdab.Dab017 && a.OutDate.Value.Date.ToString("yyyy-MM-dd") == DateTime.Now.Date.ToString("yyyy-MM-dd") && a.BillTypeId == 200 && a.TransactionNo == 209 && a.Status == 0) .First(); if (itemOut == null) { // å建æ°çåºåºå var outId = Guid.NewGuid(); var outNo = BillNo.GetBillNo("SCBL"); // æå ¥åºåºå主表 executeCommand += db.Insertable(new MesInvItemOuts { Guid = outId, ItemOutNo = outNo, TaskNo = query.blNo, CreateBy = query.userName, CreateDate = DateTime.Now, LastupdateBy = query.userName, LastupdateDate = DateTime.Now, BillTypeId = 200, TransactionNo = 209, Remark = mesItemBl.Bl007, DepotCode = womdab.Dab017, OutPart = womdaa.Daa013, FType = 0, Factory = stockBarcode.Factory, Company = stockBarcode.Company, WorkNo = womdaa.Daa021, BoardItem = womdaa.Daa002, PbillNo = womdaa.Daa001, OutDate = DateTime.Now, Status = 0, BbillNo = query.blNo }).IgnoreColumns(true).ExecuteCommand(); } // æ£æ¥æ¯å¦å·²åå¨åºåºåæç» var itemOutItemCount = db.Queryable<MesInvItemOutItems>() .Where(it => it.ItemOutId == itemOut.Guid && it.ItemId == stockBarcode.ItemId) .Count(); if (itemOutItemCount == 0) { // æå ¥æ°çåºåºåæç» executeCommand += db.Insertable(new MesInvItemOutItems { Guid = Guid.NewGuid(), ItemOutId = itemOut.Guid, ItemNo = blDetail.Bld002, Quantity = query.Num, CreateBy = query.userName, CreateDate = DateTime.Now, LastupdateBy = query.userName, LastupdateDate = DateTime.Now, Factory = stockBarcode.Factory, Company = stockBarcode.Company, DepotCode = womdab.Dab017, TaskNo = query.blNo, WorkNo = womdaa.Daa021, WorkLine = blDetail.Bld013, ErpItemNo = womdab.Dab003, ErpId = womdab.Eid, ErpAutoid = womdab.Erpid, PbillNo = query.billNo, ItemId = blDetail.Bld012, // Unit = blDetail.Bld009, // DepotId = (int)stockBarcode.DepotsId }).IgnoreColumns(true).ExecuteCommand(); } else { // æ´æ°å·²æåºåºåæç»æ°é executeCommand += db.Updateable<MesInvItemOutItems>() .SetColumns(it => it.Quantity == it.Quantity + query.Num) .Where(it => it.ItemOutId == itemOut.Guid && it.ItemId == stockBarcode.ItemId) .ExecuteCommand(); } // æå ¥åºåºæ¡ç æç» executeCommand += db.Insertable(new MesInvItemOutCDetails { Guid = Guid.NewGuid(), ItemOutId = itemOut.Guid, ItemBarcode = newBarcode ?? query.barcode, ItemNo = stockBarcode.ItemNo, LotNo = stockBarcode.LotNo, Quantity = query.Num, ForceOutFlag = 0, CreateBy = query.userName, CreateDate = DateTime.Now, LastupdateBy = query.userName, LastupdateDate = DateTime.Now, DepotCode = stockBarcode.DepotsCode, DepotSectionCode = stockBarcode.DepotSectionsCode, Remark = blDetail.Bld010, Factory = stockBarcode.Factory, Company = stockBarcode.Company, TaskNoy = mesItemBl.Bl013, BoardStyle = mesItemBl.Bl002, TaskNo = query.blNo, WorkNo = blDetail.Bld001, WorkLine = blDetail.Bld013, SuppNo = stockBarcode.SuppNo, PbillNo = query.billNo, ItemId = blDetail.Bld012, Unit = blDetail.Bld009, DepotId = (int)stockBarcode.DepotsId }).IgnoreColumns(true).ExecuteCommand(); // æå ¥ä¸å¡æµæ°´ executeCommand += db.Insertable(new MesInvBusiness2 { Guid = Guid.NewGuid(), Status = 1, BillTypeId = 200, // p_bill_type_id TransactionCode = "210", // p_transaction_no BusinessType = 1, ItemBarcode = newBarcode ?? query.barcode, ItemNo = stockBarcode.ItemNo, LotNo = stockBarcode.LotNo, EpFlag = true, Quantity = query.Num, FromInvDepotsCode = stockBarcode.DepotsCode, FromInvDepotSectionsCode = stockBarcode.DepotSectionsCode, Description = null, CreateBy = query.userName, CreateDate = DateTime.Now, LastupdateBy = query.userName, LastupdateDate = DateTime.Now, Factory = stockBarcode.Factory, Company = stockBarcode.Company, TaskNo = mesItemBl.Bl012, BillNo = query.blNo, WorkNo = blDetail.Bld001, WorkLine = blDetail.Bld013, SuppNo = stockBarcode.SuppNo, ItemId = stockBarcode.ItemId, // CkDepot = stockBarcode.DepotsId }).IgnoreColumns(true).ExecuteCommand(); // æ´æ°å·¥å表æ°é executeCommand += db.Updateable<Womdab>() .SetColumns(it => new Womdab { Dab007 = (it.Dab007 ?? 0) + query.Num, // 工忰é Dab020 = (it.Dab020 ?? 0) + query.Num, // 已忿°é Dab021 = (it.Dab021 ?? 0) + query.Num // 已忿°é }) .Where(it => it.Id == womdab.Id && it.Dab003 == womdab.Dab003) .IgnoreColumns(true) .ExecuteCommand(); // æ´æ°è¡¥æåæç»å·²è¡¥æ°é executeCommand += db.Updateable<MesItemBlDetail>() .SetColumns(it => new MesItemBlDetail { Bld008 = (it.Bld008 ?? 0) + (int)query.Num }) .Where(it => it.Id == blDetail.Id) .ExecuteCommand(); // è·åæ´æ°åçè¡¥æåæç»æ°é var updatedDetail = db.Queryable<MesItemBlDetail>() .Where(it => it.Id == blDetail.Id) .Select(it => new { it.Bld007, it.Bld008 }) .First(); if ((updatedDetail.Bld007 ?? 0) <= (updatedDetail.Bld008 ?? 0)) { // æ´æ°æç»å®æç¶æ executeCommand += db.Updateable<MesItemBlDetail>() .SetColumns(it => new MesItemBlDetail { Bld011 = 1 }) .Where(it => it.Id == blDetail.Id) .ExecuteCommand(); } // æ£æ¥æ¯å¦è¿ææªå®æçæç» var unfinishedDetail = db.Queryable<MesItemBlDetail>() .Where(it => it.Mid == mesItemBl.Id && (it.Bld011 ?? 0) == 0) .First(); if (unfinishedDetail == null) { // å¦ææ²¡ææ¾å°æªå®ææç»ï¼åæ´æ°è¡¥æåç¶æä¸ºå·²å®æ executeCommand += db.Updateable<MesItemBl>() .SetColumns(it => new MesItemBl { Bl019 = true, WcUser = query.userName, WcTime = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss") }) .Where(it => it.Id == mesItemBl.Id) .ExecuteCommand(); } if (executeCommand <= 1) throw new Exception("æ´æ°å¤±è´¥"); return executeCommand; }) > 0; // è·åæç»çå¾ åææç»å表 var pendingList = Db.Queryable<MesItemBl, MesItemBlDetail>((a, b) => new JoinQueryInfos(JoinType.Left, a.Id == b.Mid)) .Where((a, b) => a.BlNo == query.blNo && (b.Bld007 ?? 0) - (b.Bld008 ?? 0) > 0) .Select((a, b) => new PendingMaterialDto { SectionCode = b.Bld012.ToString(), ItemNo = b.Bld002, ItemName = b.Bld003, ItemSpec = b.Bld004, PendingQty = (b.Bld007 ?? 0) - (b.Bld008 ?? 0) }) .ToList(); return (success, pendingList); } #endregion #region çäº§è¶ é¢ public List<string> GetSccList() { var list = Db.Queryable<MesItemBl>() .Where(s => (s.Bl018 ?? false) == true && (s.Bl019 ?? false) == false && s.Bl008 == "çäº§è¶ é¢") .Select(s => s.BlNo) .ToList(); return list; } /// <summary> /// è·åçäº§è¶ é¢åæç» /// </summary> /// <param name="query">æ¥è¯¢åæ°</param> /// <returns>çäº§è¶ é¢åæç»å表</returns> public List<MesItemBlDetail> GetMesItemBlDetailBySccBillNo( WarehouseQuery query) { if (string.IsNullOrEmpty(query.billNo)) throw new Exception("请éåæ®å·ï¼"); // æ£æ¥è¶ é¢åæ¯å¦åå¨ä¸ä¸ºçäº§è¶ é¢ç±»å var mesItemBl = Db.Queryable<MesItemBl>() .Where(a => a.BlNo == query.billNo && a.Bl008 == "çäº§è¶ é¢") .First(); if (mesItemBl == null) throw new Exception("åæ®å·ä¸æ£ç¡®ï¼"); // æ£æ¥å·¥åæç»ç¶æ var blDetails = Db.Queryable<MesItemBlDetail>() .Where(it => it.Mid == mesItemBl.Id) .ToList(); foreach (var womdab in blDetails.Select(detail => Db.Queryable<Womdab>() .Where(it => it.Erpid == detail.Bld014) .First())) { if (womdab == null) throw new Exception("æªæ¾å°å·¥åæç»ï¼"); if ((womdab.Dab006 ?? 0) != (womdab.Dab007 ?? 0) || (womdab.Dab021 ?? 0) != (womdab.Dab022 ?? 0)) throw new Exception("ç©ææªé¢å®ææåå¨å¾ è¡¥ç©æï¼"); } // è·åæªå®æçè¶ é¢åæç» var pendingDetails = Db.Queryable<MesItemBl, MesItemBlDetail>((a, b) => new JoinQueryInfos(JoinType.Left, a.Id == b.Mid)) .Where((a, b) => a.BlNo == query.billNo && (b.Bld007 ?? 0) - (b.Bld008 ?? 0) > 0) .OrderBy((a, b) => b.Bld002) .Select((a, b) => new MesItemBlDetail { Bld012 = b.Bld012, Bld002 = b.Bld002, Bld003 = b.Bld003, Bld004 = b.Bld004, Bld007 = b.Bld007, Bld008 = b.Bld008 }) .ToList(); return pendingDetails; } /// <summary> /// çäº§è¶ é¢æ«ææ¡ç prc_rf_pda_scan_zout_barcodeCL /// </summary> /// <param name="query">æ¥è¯¢åæ°</param> /// <returns>æ«æç»æ</returns> /// <remarks> /// åæ°è¯´æ: /// - billNo: å·¥åå·(å¿ å¡«) /// - barcode: æ¡ç (å¿ å¡«) /// - userName: ç¨æ·å(å¿ å¡«) /// - blNo: è¶ é¢åå·(å¿ å¡«) /// </remarks> public (bool success, List<PendingMaterialDto> pendingList) ScanBarcodeForOverPicking( WarehouseQuery query) { #region åæ°æ ¡éª if (string.IsNullOrEmpty(query.billNo)) throw new Exception("请éååæ®å·ï¼"); if (string.IsNullOrEmpty(query.barcode)) throw new Exception("è¯·æ«ææ¡ç ï¼"); if (string.IsNullOrEmpty(query.userName)) throw new Exception("ç¨æ·åä¸è½ä¸ºç©ºï¼"); if (string.IsNullOrEmpty(query.blNo)) throw new Exception("è¶ é¢åå·ä¸è½ä¸ºç©ºï¼"); #endregion // æ£éªæ¯å¦é夿«æ var exists = Db.Queryable<MesInvItemOutCDetails>() .Where(b => b.ItemBarcode == query.barcode) .Any(); if (exists) throw new Exception("æ¤æ¡ç å·²æ«æ,å¿é夿«ç ï¼"); // æ¥è¯¢æ¡ç åºåä¿¡æ¯ var stockBarcode = Db.Queryable<MesInvItemStocks>() .Where(t => t.ItemBarcode == query.barcode && t.Quantity > 0) .First(); if (stockBarcode == null) throw new Exception($"åºå䏿 æ¤æ¡ç ,è¯·æ ¸å¯¹ï¼{query.barcode}"); // æ£æ¥è¶ é¢åç¶æ var mesItemBl = Db.Queryable<MesItemBl>() .Where(a => a.BlNo == query.blNo && a.Bl008 == "çäº§è¶ é¢") .First(); if (mesItemBl == null) throw new Exception($"ç³è¯·å {query.blNo} å·²æ¤åï¼"); if (mesItemBl.Bl018 != true) throw new Exception($"ç³è¯·å {query.blNo} æªå®¡æ ¸ï¼"); if (mesItemBl.Bl019 == true) throw new Exception($"ç³è¯·å {query.blNo} å·²å®ç»ï¼"); // æ£æ¥å·¥åæç»ç¶æ var blDetails = Db.Queryable<MesItemBlDetail>() .Where(it => it.Mid == mesItemBl.Id) .ToList(); foreach (var womdab1 in blDetails.Select(detail => Db .Queryable<Womdab>() .Where(it => it.Erpid == detail.Bld014) .First())) { if (womdab1 == null) throw new Exception("æªæ¾å°å·¥åæç»ï¼"); if ((womdab1.Dab006 ?? 0) != (womdab1.Dab007 ?? 0) || (womdab1.Dab021 ?? 0) != (womdab1.Dab022 ?? 0)) throw new Exception("ç©ææªé¢å®ææåå¨å¾ è¡¥ç©æï¼"); } // è·åè¶ é¢åæç»å¹¶æ ¡éª var blDetail = Db.Queryable<MesItemBlDetail>() .Where(b => b.Mid == mesItemBl.Id && b.Bld012 == stockBarcode.ItemId) .First(); if (blDetail == null) throw new Exception($"ç³è¯·åä¸å卿¤ç©æ {stockBarcode.ItemNo} 请确认ï¼"); // æ£æ¥å¾ è¶ é¢æ°é var quantity = (blDetail.Bld007 ?? 0) - (blDetail.Bld008 ?? 0); if (quantity == 0) throw new Exception("ç©æå·²æ«ç 宿ï¼è¯·æ ¸å¯¹ï¼"); // æ£æ¥å·¥åä¿¡æ¯ var womdaa = Db.Queryable<Womdaa>() .Where(a => a.Daa001 == query.billNo) .First(); if (womdaa == null) throw new Exception($"å·¥å {query.billNo} ä¸åå¨ï¼è¯·ç¡®è®¤ï¼"); var womdab = Db.Queryable<Womdab>() .Where(b => b.Dab001 == query.billNo && b.Erpid == blDetail.Bld014) .First(); if (womdab == null) throw new Exception($"夿æç»ä¸å卿¤ç©æ {stockBarcode.ItemNo} 请确认ï¼"); // 妿æ¡ç æ°é大äºå¾ è¶ é¢æ°é,è¿åå¾ å¤çå表ä¾ç¡®è®¤ if (stockBarcode.Quantity > quantity) { var pendingList = Db.Queryable<MesItemBl, MesItemBlDetail>((a, b) => new JoinQueryInfos(JoinType.Left, a.Id == b.Mid)) .Where((a, b) => a.BlNo == query.blNo && (b.Bld007 ?? 0) - (b.Bld008 ?? 0) > 0) .Select((a, b) => new PendingMaterialDto { SectionCode = b.Bld012.ToString(), ItemNo = b.Bld002, ItemName = b.Bld003, ItemSpec = b.Bld004, PendingQty = (b.Bld007 ?? 0) - (b.Bld008 ?? 0) }) .ToList(); return (false, pendingList); } // æ§è¡æ°æ®åºäºå¡ UseTransaction(db => { // çææè·ååºåºå Guid outId = Guid.Empty; var outNo = ""; var outRecord = db.Queryable<MesInvItemOuts>() .Where(a => a.BbillNo == query.blNo && a.DepotCode == womdab.Dab017 && a.OutDate.Value.Date == DateTime.Now.Date && a.BillTypeId == 200 && a.TransactionNo == 210 && a.Status == 0) .First(); if (outRecord == null) { outId = Guid.NewGuid(); outNo = BillNo.GetBillNo("SCBL"); // éè¦å®ç°çæåå·çæ¹æ³ // æå ¥åºåºå主表 db.Insertable(new MesInvItemOuts { Guid = outId, ItemOutNo = outNo, TaskNo = query.blNo, CreateBy = query.userName, CreateDate = DateTime.Now, LastupdateBy = query.userName, LastupdateDate = DateTime.Now, BillTypeId = 200, TransactionNo = 210, Remark = mesItemBl.Bl007, DepotCode = womdab.Dab017, OutPart = womdaa.Daa013, FType = 0, WorkNo = womdaa.Daa021, OutType = "çäº§è¶ é¢å", BoardItem = womdaa.Daa002, PbillNo = womdaa.Daa001, OutDate = DateTime.Now, Status = 0, BbillNo = query.blNo }).IgnoreColumns(true).ExecuteCommand(); } else { outId = outRecord.Guid; outNo = outRecord.ItemOutNo; } // æ´æ°ææå ¥åºåºåæç» var outItem = db.Queryable<MesInvItemOutItems>() .Where(it => it.ItemOutId == outId && it.ItemId == stockBarcode.ItemId) .First(); if (outItem == null) { // æå ¥åºåºåæç» db.Insertable(new MesInvItemOutItems { Guid = Guid.NewGuid(), ItemOutId = outId, ItemNo = blDetail.Bld002, Quantity = stockBarcode.Quantity, CreateBy = query.userName, CreateDate = DateTime.Now, LastupdateBy = query.userName, LastupdateDate = DateTime.Now, DepotCode = womdab.Dab017, TaskNo = query.blNo, WorkNo = womdaa.Daa021, WorkLine = blDetail.Bld013, ErpItemNo = womdab.Dab003, ErpId = womdab.Eid, ErpAutoid = womdab.Erpid, PbillNo = query.billNo, ItemId = blDetail.Bld012, // Unit = blDetail.Bld009, // DepotId = stockBarcode.DepotsId }).IgnoreColumns(true).ExecuteCommand(); } else { // æ´æ°åºåºåæç»æ°é db.Updateable<MesInvItemOutItems>() .SetColumns(it => new MesInvItemOutItems { Quantity = it.Quantity + stockBarcode.Quantity }) .Where(it => it.ItemOutId == outId && it.ItemId == stockBarcode.ItemId) .ExecuteCommand(); } // æå ¥åºåºæ¡ç æç» db.Insertable(new MesInvItemOutCDetails { Guid = Guid.NewGuid(), ItemOutId = outId, ItemBarcode = stockBarcode.ItemBarcode, ItemNo = stockBarcode.ItemNo, LotNo = stockBarcode.LotNo, Quantity = stockBarcode.Quantity, CreateBy = query.userName, CreateDate = DateTime.Now, LastupdateBy = query.userName, LastupdateDate = DateTime.Now, DepotCode = stockBarcode.DepotsCode, DepotSectionCode = stockBarcode.DepotSectionsCode, Remark = blDetail.Bld010, TaskNo = query.blNo, WorkNo = blDetail.Bld001, WorkLine = blDetail.Bld013, SuppNo = stockBarcode.SuppNo, PbillNo = query.billNo, ItemId = blDetail.Bld012, Unit = blDetail.Bld009, DepotId = (int)stockBarcode.DepotsId }).IgnoreColumns(true).ExecuteCommand(); // æå ¥ä¸å¡æµæ°´ db.Insertable(new MesInvBusiness2 { Guid = Guid.NewGuid(), Status = 1, BillTypeId = 200, TransactionCode = "210", BusinessType = -1, ItemBarcode = query.barcode, ItemNo = stockBarcode.ItemNo, LotNo = stockBarcode.LotNo, EpFlag = true, Quantity = stockBarcode.Quantity, FromInvDepotsCode = stockBarcode.DepotsCode, FromInvDepotSectionsCode = stockBarcode.DepotSectionsCode, CreateBy = query.userName, CreateDate = DateTime.Now, LastupdateBy = query.userName, LastupdateDate = DateTime.Now, TaskNo = mesItemBl.Bl012, BillNo = query.blNo, WorkNo = blDetail.Bld001, WorkLine = blDetail.Bld013, SuppNo = stockBarcode.SuppNo, SuppId = stockBarcode.SuppId, ItemId = stockBarcode.ItemId, // CkDepot = stockBarcode.DepotsId }).IgnoreColumns(true).ExecuteCommand(); // æ´æ°å·¥å夿æç» db.Updateable<Womdab>() .SetColumns(it => new Womdab { Dab020 = (it.Dab020 ?? 0) + stockBarcode.Quantity, Dab023 = (it.Dab023 ?? 0) + stockBarcode.Quantity }) .Where(it => it.Id == womdab.Id) .ExecuteCommand(); // æ´æ°è¶ é¢åæç» db.Updateable<MesItemBlDetail>() .SetColumns(it => new MesItemBlDetail { Bld008 = (it.Bld008 ?? 0) + (int)stockBarcode.Quantity, Bld011 = (it.Bld007 ?? 0) <= (it.Bld008 ?? 0) + stockBarcode.Quantity ? 1 : 0 }) .Where(it => it.Id == blDetail.Id) .ExecuteCommand(); // æ´æ°åºåæ°é为0 db.Updateable<MesInvItemStocks>() .SetColumns(it => it.Quantity == 0) .Where(it => it.Guid == stockBarcode.Guid) .ExecuteCommand(); // æ£æ¥æ¯å¦æææç»é½å·²å®æ var hasUnfinished = db.Queryable<MesItemBlDetail>() .Where(it => it.Mid == mesItemBl.Id && (it.Bld011 ?? 0) == 0) .Any(); // å¦ææææç»å®æ,æ´æ°è¶ é¢åç¶æä¸ºå·²å®æ if (!hasUnfinished) { db.Updateable<MesItemBl>() .SetColumns(it => it.Bl019 == true) .Where(it => it.Id == mesItemBl.Id) .ExecuteCommand(); } return 1; }); // è·åæç»çå¾ å¤çå表 var finalPendingList = Db.Queryable<MesItemBl, MesItemBlDetail>( (a, b) => new JoinQueryInfos(JoinType.Left, a.Id == b.Mid)) .Where((a, b) => a.BlNo == query.blNo && (b.Bld007 ?? 0) - (b.Bld008 ?? 0) > 0) .Select((a, b) => new PendingMaterialDto { SectionCode = b.Bld012.ToString(), ItemNo = b.Bld002, ItemName = b.Bld003, ItemSpec = b.Bld004, PendingQty = (b.Bld007 ?? 0) - (b.Bld008 ?? 0) }) .ToList(); return (true, finalPendingList); } /// <summary> /// çäº§è¶ é¢æå°æ¡ç /// </summary> /// <param name="query">æ¥è¯¢åæ°</param> /// <returns>å¤çç»æ</returns> public (bool success, List<PendingMaterialDto> pendingList) PrintBarcodeForOverPicking(WarehouseQuery query) { UseTransaction(db => { #region åæ°æ ¡éª if (string.IsNullOrEmpty(query.billNo)) throw new Exception("请éååæ®å·ï¼"); if (string.IsNullOrEmpty(query.barcode)) throw new Exception("è¯·æ«ææ¡ç ï¼"); if (string.IsNullOrEmpty(query.userName)) throw new Exception("ç¨æ·åä¸è½ä¸ºç©ºï¼"); if (string.IsNullOrEmpty(query.blNo)) throw new Exception("è¶ é¢åå·ä¸è½ä¸ºç©ºï¼"); if (query.Num <= 0) throw new Exception("请è¾å ¥æ£ç¡®çåææ°éï¼"); #endregion // æ¥è¯¢åºåæ¡ç ä¿¡æ¯ var stockBarcode = db.Queryable<MesInvItemStocks>() .Where(t => t.ItemBarcode == query.barcode && t.Quantity > 0) .First(); if (stockBarcode == null) throw new Exception($"åºå䏿 æ¤æ¡ç ï¼è¯·æ ¸å¯¹ï¼{query.barcode}"); var totalQty = stockBarcode.Quantity; string newBarcode = null; // æåæ¡ç if (totalQty > query.Num) { var mesItems = db.Queryable<MesItems>() .Where(s => s.Id == stockBarcode.ItemId).First(); // çææ°æ¡ç å· newBarcode = BillNo.GetBillNo("TMBH(æ¡ç ç¼å·)", mesItems.ItemNo); // åå ¥æ°æ¡ç è®°å½ db.Insertable(new MesInvItemBarcodes { Guid = Guid.NewGuid(), ItemBarcode = newBarcode, ItemNo = stockBarcode.ItemNo, LotNo = stockBarcode.LotNo, Quantity = query.Num, EpFlag = true, CreateBy = query.userName, CreateDate = DateTime.Now, LastupdateBy = query.userName, LastupdateDate = DateTime.Now, OldItemBarcode = query.barcode, Factory = stockBarcode.Factory, Company = stockBarcode.Company, WorkNo = stockBarcode.WorkNo, WorkLine = stockBarcode.WorkLine, SuppId = stockBarcode.SuppId, SuppNo = stockBarcode.SuppNo, ItemId = stockBarcode.ItemId }).IgnoreColumns(true).ExecuteCommand(); // æ´æ°åæ¡ç æ°é db.Updateable<MesInvItemBarcodes>() .SetColumns(it => new MesInvItemBarcodes { Quantity = totalQty - query.Num }) .Where(it => it.ItemBarcode == query.barcode) .ExecuteCommand(); // å é¤åæ¡ç åºåè®°å½ db.Deleteable<MesInvItemStocks>() .Where(it => it.ItemBarcode == query.barcode) .ExecuteCommand(); // æå ¥å©ä½æ¡ç æ°éçæ°åºåè®°å½ db.Insertable(new MesInvItemStocks { Guid = Guid.NewGuid(), ItemBarcode = stockBarcode.ItemBarcode, ItemNo = stockBarcode.ItemNo, LotNo = stockBarcode.LotNo, Quantity = totalQty - query.Num, EpFlag = stockBarcode.EpFlag, CustomerNo = stockBarcode.CustomerNo, DepotsCode = stockBarcode.DepotsCode, DepotsId = stockBarcode.DepotsId, DepotSectionsCode = stockBarcode.DepotSectionsCode, CheckDate = stockBarcode.CheckDate, ItemType = stockBarcode.ItemType, IndepDate = stockBarcode.IndepDate, Factory = stockBarcode.Factory, Company = stockBarcode.Company, IqcStatus = stockBarcode.IqcStatus, BoardStyle = stockBarcode.BoardStyle, WorkNo = stockBarcode.WorkNo, WorkLine = stockBarcode.WorkLine, SuppNo = stockBarcode.SuppNo, SuppId = stockBarcode.SuppId, ItemId = stockBarcode.ItemId }).IgnoreColumns(true).ExecuteCommand(); // åæ°æ¡ç ç交æè¡¨ï¼æ°æ¡ç ä¸å ¥åºç´æ¥åº db.Insertable(new MesInvBusiness2 { Guid = Guid.NewGuid(), Status = 1, BillTypeId = 200, TransactionCode = "210", BusinessType = -1, ItemBarcode = newBarcode, ItemNo = stockBarcode.ItemNo, LotNo = stockBarcode.LotNo, EpFlag = true, Quantity = query.Num, ToInvDepotsCode = stockBarcode.DepotsCode, ToInvDepotSectionsCode = stockBarcode.DepotSectionsCode, Description = "çäº§è¶ é¢", CreateBy = query.userName, CreateDate = DateTime.Now, LastupdateBy = query.userName, LastupdateDate = DateTime.Now, TaskNo = stockBarcode.TaskNo, WorkNo = stockBarcode.WorkNo, WorkLine = stockBarcode.WorkLine, SuppNo = stockBarcode.SuppNo, SuppId = stockBarcode.SuppId, ItemId = stockBarcode.ItemId }).IgnoreColumns(true).ExecuteCommand(); } else if (totalQty < query.Num) { throw new Exception("åææ°éå¤§äºæ¡ç æ°,è¯·æ ¸å¯¹ï¼"); } if (string.IsNullOrEmpty(newBarcode)) newBarcode = query.barcode; // æ£æ¥è¶ é¢åç¶æ var mesItemBl = db.Queryable<MesItemBl>() .Where(a => a.BlNo == query.blNo && a.Bl008 == "çäº§è¶ é¢") .First(); if (mesItemBl == null) throw new Exception("ç³è¯·åä¸åå¨ï¼"); if (!(mesItemBl.Bl018 ?? false)) throw new Exception($"ç³è¯·å {query.blNo} æªå®¡æ ¸ï¼"); if (mesItemBl.Bl019 ?? false) throw new Exception($"ç³è¯·å {query.blNo} å·²å®ç»ï¼"); // æ£æ¥è¶ é¢åæç» var blDetail = db.Queryable<MesItemBlDetail>() .Where(b => b.Mid == mesItemBl.Id && b.Bld012 == stockBarcode.ItemId) .First(); if (blDetail == null) throw new Exception($"ç³è¯·åä¸å卿¤ç©æ {stockBarcode.ItemNo} 请确认ï¼"); var pendingQty = (blDetail.Bld007 ?? 0) - (blDetail.Bld008 ?? 0); if (pendingQty == 0) throw new Exception("ç©æå·²æ«ç 宿ï¼è¯·æ ¸å¯¹ï¼"); // æ£æ¥å·¥å var workOrder = db.Queryable<Womdaa>() .Where(a => a.Daa001 == query.billNo) .First(); if (workOrder == null) throw new Exception($"å·¥å {query.billNo} ä¸åå¨ï¼è¯·ç¡®è®¤ï¼"); var workOrderDetail = db.Queryable<Womdab>() .Where(b => b.Dab001 == query.billNo && b.Erpid == blDetail.Bld014) .First(); if (workOrderDetail == null) throw new Exception($"夿æç»ä¸å卿¤ç©æ {stockBarcode.ItemNo} 请确认ï¼"); if (query.Num > pendingQty) throw new Exception( $"æåæ°éï¼{query.Num} 大äºå¾ åææ°éï¼{pendingQty}ï¼è¯·æ ¸å¯¹ï¼"); // è·åæå建åºåºå var itemOut = db.Queryable<MesInvItemOuts>() .Where(a => a.BbillNo == query.blNo && a.DepotCode == workOrderDetail.Dab017 && a.OutDate.Value.Date.ToString("yyyy-MM-dd") == DateTime.Now.Date.ToString("yyyy-MM-dd") && a.BillTypeId == 200 && a.TransactionNo == 210 && a.Status == 0) .First(); if (itemOut == null) { // å建æ°çåºåºå itemOut = new MesInvItemOuts { Guid = Guid.NewGuid(), ItemOutNo = BillNo.GetBillNo("SCBL"), // éè¦å®ç°çæåå·çæ¹æ³ TaskNo = query.blNo, CreateBy = query.userName, CreateDate = DateTime.Now, LastupdateBy = query.userName, LastupdateDate = DateTime.Now, BillTypeId = 200, TransactionNo = 210, Remark = mesItemBl.Bl007, DepotCode = workOrderDetail.Dab017, OutPart = workOrder.Daa013, FType = 0, Factory = stockBarcode.Factory, Company = stockBarcode.Company, WorkNo = workOrder.Daa021, OutType = "çäº§è¶ é¢å", BoardItem = workOrder.Daa002, PbillNo = workOrder.Daa001, OutDate = DateTime.Now, Status = 0, BbillNo = query.blNo }; db.Insertable(itemOut).IgnoreColumns(true).ExecuteCommand(); } // æ£æ¥æ¯å¦å·²åå¨åºåºåæç» var itemOutItemCount = db.Queryable<MesInvItemOutItems>() .Where(it => it.ItemOutId == itemOut.Guid && it.ItemId == stockBarcode.ItemId) .Count(); if (itemOutItemCount == 0) { // æå ¥æ°çåºåºåæç» db.Insertable(new MesInvItemOutItems { Guid = Guid.NewGuid(), ItemOutId = itemOut.Guid, ItemNo = blDetail.Bld002, Quantity = query.Num, CreateBy = query.userName, CreateDate = DateTime.Now, LastupdateBy = query.userName, LastupdateDate = DateTime.Now, Factory = stockBarcode.Factory, Company = stockBarcode.Company, DepotCode = workOrderDetail.Dab017, TaskNo = query.blNo, WorkNo = workOrder.Daa021, WorkLine = blDetail.Bld013, ErpItemNo = workOrderDetail.Dab003, ErpId = workOrderDetail.Eid, ErpAutoid = workOrderDetail.Erpid, PbillNo = query.billNo, ItemId = blDetail.Bld012, // Unit = blDetail.Bld009, // DepotId = stockBarcode.DepotsId }).IgnoreColumns(true).ExecuteCommand(); } else { // æ´æ°å·²æåºåºåæç»æ°é db.Updateable<MesInvItemOutItems>() .SetColumns(it => it.Quantity == it.Quantity + query.Num) .Where(it => it.ItemOutId == itemOut.Guid && it.ItemId == stockBarcode.ItemId) .ExecuteCommand(); } // æå ¥åºåºæç»è®°å½ db.Insertable(new MesInvItemOutCDetails { Guid = Guid.NewGuid(), ItemOutId = itemOut.Guid, ItemBarcode = newBarcode, ItemNo = stockBarcode.ItemNo, LotNo = stockBarcode.LotNo, Quantity = query.Num, ForceOutFlag = 0, CreateBy = query.userName, CreateDate = DateTime.Now, LastupdateBy = query.userName, LastupdateDate = DateTime.Now, DepotCode = stockBarcode.DepotsCode, DepotSectionCode = stockBarcode.DepotSectionsCode, Remark = blDetail.Bld010, Factory = stockBarcode.Factory, Company = stockBarcode.Company, TaskNoy = mesItemBl.Bl013, BoardStyle = mesItemBl.Bl002, TaskNo = query.blNo, WorkNo = blDetail.Bld001, WorkLine = blDetail.Bld013, SuppNo = stockBarcode.SuppNo, PbillNo = query.billNo, ItemId = blDetail.Bld012, Unit = blDetail.Bld009, DepotId = (int)stockBarcode.DepotsId, LineK3id = workOrderDetail.Erpid, EbelnK3id = workOrderDetail.Eid }).IgnoreColumns(true).ExecuteCommand(); // æå ¥ä¸å¡äº¤æè®°å½ db.Insertable(new MesInvBusiness2 { Guid = Guid.NewGuid(), Status = 1, BillTypeId = 200, // p_bill_type_id TransactionCode = "210", // p_transaction_no BusinessType = 1, ItemBarcode = newBarcode, ItemNo = stockBarcode.ItemNo, LotNo = stockBarcode.LotNo, EpFlag = true, Quantity = query.Num, FromInvDepotsCode = stockBarcode.DepotsCode, FromInvDepotSectionsCode = stockBarcode.DepotSectionsCode, CreateBy = query.userName, CreateDate = DateTime.Now, LastupdateBy = query.userName, LastupdateDate = DateTime.Now, Factory = stockBarcode.Factory, Company = stockBarcode.Company, TaskNo = mesItemBl.Bl012, // Matches C_QTCK.Bl012 BillNo = query.blNo, WorkNo = blDetail.Bld001, // Matches C_QTCK_D.Bld001 WorkLine = blDetail.Bld013, // Matches C_QTCK_D.Bld013 SuppNo = stockBarcode.SuppNo, ItemId = stockBarcode.ItemId }).IgnoreColumns(true).ExecuteCommand(); // æ´æ°å·¥å表æ°é db.Updateable<Womdab>() .SetColumns(it => new Womdab { Dab020 = (it.Dab020 ?? 0) + stockBarcode.Quantity, Dab023 = (it.Dab023 ?? 0) + stockBarcode.Quantity }) .Where(it => it.Id == workOrderDetail.Id) .ExecuteCommand(); // æ´æ°è¡¥æåæç»å·²è¡¥æ°é db.Updateable<MesItemBlDetail>() .SetColumns(it => new MesItemBlDetail { Bld008 = (it.Bld008 ?? 0) + (int)stockBarcode.Quantity }) .Where(it => it.Id == blDetail.Id) .ExecuteCommand(); // æ£æ¥è¡¥æåæç»æ¯å¦å®æ var blDetail1 = db.Queryable<MesItemBlDetail>() .Where(it => it.Id == blDetail.Id) .First(); if ((blDetail1.Bld007 ?? 0) <= (blDetail1.Bld008 ?? 0)) { // æ´æ°æç»å®æç¶æ db.Updateable<MesItemBlDetail>() .SetColumns(it => it.Bld011 == 1) .Where(it => it.Id == blDetail1.Id) .ExecuteCommand(); } // æ£æ¥æ¯å¦æææç»é½å·²å®æ var hasUnfinished = db.Queryable<MesItemBlDetail>() .Where(it => it.Mid == mesItemBl.Id && (it.Bld011 ?? 0) == 0) .Any(); // å¦ææææç»å®æ,æ´æ°è¡¥æåç¶æä¸ºå·²å®æ if (!hasUnfinished) { db.Updateable<MesItemBl>() .SetColumns(it => it.Bl019 == true) .Where(it => it.Id == mesItemBl.Id) .ExecuteCommand(); } return 1; }); // è·åæç»çå¾ å¤çå表 var pendingList = Db.Queryable<MesItemBl, MesItemBlDetail>((a, b) => new JoinQueryInfos(JoinType.Left, a.Id == b.Mid)) .Where((a, b) => a.BlNo == query.blNo && (b.Bld007 ?? 0) - (b.Bld008 ?? 0) > 0) .Select((a, b) => new PendingMaterialDto { SectionCode = b.Bld012.ToString(), ItemNo = b.Bld002, ItemName = b.Bld003, ItemSpec = b.Bld004, PendingQty = (b.Bld007 ?? 0) - (b.Bld008 ?? 0) }) .ToList(); return (true, pendingList); } #endregion } service/Warehouse/MesItemTblManager.cs
@@ -52,9 +52,7 @@ public WarehouseQuery SctlScanDepots(WarehouseQuery query) { if (query.DepotCode.IsNullOrEmpty()) { throw new NullReferenceException("请æ«åºä½æ¡ç "); } var warehouseQuery = Db.Queryable<MesDepotSections, MesDepots>((a, b) => new JoinQueryInfos(JoinType.Inner, a.DepotGuid == b.Guid)) @@ -63,13 +61,11 @@ { DepotSectionName = a.DepotSectionName, DepotName = b.DepotName, DepotCode = b.DepotCode, DepotCode = b.DepotCode }).First(); if (warehouseQuery == null) { throw new Exception("åºä½ç¼ç " + query.DepotCode + " ä¸åå¨ï¼è¯·ç¡®è®¤ï¼"); } return warehouseQuery; } @@ -84,10 +80,7 @@ var p_bill_type_id = 100; var p_transction_no = 104; if (p_section_code.IsNullOrEmpty()) { throw new Exception("请æ«åºä½æ¡ç ï¼"); } if (p_section_code.IsNullOrEmpty()) throw new Exception("请æ«åºä½æ¡ç ï¼"); var c_depot_code = Db.Queryable<MesDepotSections, MesDepots>((a, b) => new JoinQueryInfos(JoinType.Inner, a.DepotGuid == b.Guid)) @@ -95,25 +88,19 @@ .Select((a, b) => b.DepotId).First(); if (!c_depot_code.HasValue) { throw new Exception("åºä½ç¼ç " + p_section_code + " ä¸åå¨ï¼è¯·ç¡®è®¤ï¼"); } var mesDepotSections = Db.Queryable<MesDepotSections>() .Where(a => a.DepotSectionCode == p_section_code).First(); if (mesDepotSections == null) { throw new Exception("åºä½ç¼ç " + p_section_code + " ä¸åå¨ï¼è¯·ç¡®è®¤ï¼"); } var c_mes_depots = Db.Queryable<MesDepots>() .Where(b => b.Guid == mesDepotSections.DepotGuid).First(); if (c_mes_depots == null) { throw new Exception("åºä½ç¼ç " + p_section_code + " ä¸åå¨ï¼è¯·ç¡®è®¤ï¼"); } var c_num = Db.Queryable<MesInvItemIns, MesInvItemInCDetails>((a, b) => new JoinQueryInfos(JoinType.Inner, a.Guid == b.ItemInId)) @@ -122,45 +109,29 @@ a.TransctionNo == p_transction_no.ToString()) .Count(); if (c_num > 0) { throw new Exception("æ¤æ¡ç å·²æ«å ¥åºï¼å¿é夿«æï¼"); } if (c_num > 0) throw new Exception("æ¤æ¡ç å·²æ«å ¥åºï¼å¿é夿«æï¼"); c_num = Db.Queryable<MesInvItemStocks>() .Where(t => t.ItemBarcode == p_item_barcode).Count(); if (c_num > 0) { throw new Exception("æ¤æ¡ç å·²æ«å ¥åºï¼å¿é夿«æï¼"); } if (c_num > 0) throw new Exception("æ¤æ¡ç å·²æ«å ¥åºï¼å¿é夿«æï¼"); var c_mes_inv_item_barcodes = Db.Queryable<MesInvItemBarcodes>() .Where(t => t.ItemBarcode == p_item_barcode).First(); if (c_mes_inv_item_barcodes == null) { throw new Exception("æ¤æ¡ç ä¸å±äºè¯¥éæåï¼è¯·æ ¸å¯¹ï¼"); } if (c_mes_inv_item_barcodes.Memo != "ç产éæ") { throw new Exception("æ¤æ¡ç 䏿¯çäº§éææ¡ç ï¼ä¸å¯ä½¿ç¨çäº§éææ¨¡åï¼"); } var C_MES_ITEM_TBL = Db.Queryable<MesItemTbl>() .Where(a => a.BillNo == c_mes_inv_item_barcodes.BillNo && (a.Tbl013 ?? 0) == 1).First(); if (C_MES_ITEM_TBL == null) { throw new Exception("ç³è¯·åå·²æ¤å,æ æ³æ«ç !"); } if (C_MES_ITEM_TBL == null) throw new Exception("ç³è¯·åå·²æ¤å,æ æ³æ«ç !"); if (C_MES_ITEM_TBL.Tbl020 == 1) { throw new Exception("æ«ç 宿,ç³è¯·åå·²å®ç»!"); } if (C_MES_ITEM_TBL.Tbl020 == 1) throw new Exception("æ«ç 宿,ç³è¯·åå·²å®ç»!"); var C_MES_ITEM_TBL_DETAIL = Db.Queryable<MesItemTblDetail>() .Where(a => a.Tlmid == C_MES_ITEM_TBL.Id @@ -168,9 +139,7 @@ .First(); if (C_MES_ITEM_TBL_DETAIL == null) { throw new Exception("æ¡ç ä¸å±äºè¯¥ç³è¯·åæç»,æ æ³æ«ç !"); } var c_quantity = c_mes_inv_item_barcodes.Quantity; @@ -223,10 +192,7 @@ } var hbdy = c_mes_inv_item_barcodes.Hbdy ?? 0; if (hbdy == 1) { throw new Exception("䏿¯æåå¹¶æå°çæ¡ç :" + p_item_barcode); } if (hbdy == 1) throw new Exception("䏿¯æåå¹¶æå°çæ¡ç :" + p_item_barcode); totalResult += db.Insertable(new MesInvItemInCDetails { @@ -321,46 +287,58 @@ { // è¯åéæ - æ´æ°å·¥å表(WOMDAB)ç¸å ³æ°é if (C_MES_ITEM_TBL.Tbl005 == "è¯åéæ") { totalResult += Db.Updateable<Womdab>() .SetColumns(it => new Womdab { Dab007 = it.Dab007 - c_mes_inv_item_barcodes.Quantity, // åå°å·¥åæ°é Dab022 = (it.Dab022 ?? 0) + c_mes_inv_item_barcodes.Quantity, // å¢å éææ°é LpTl = (it.LpTl ?? 0) + (int)c_mes_inv_item_barcodes.Quantity, // å¢å è¯åéææ°é Dab020 = (it.Dab020 ?? 0) - c_mes_inv_item_barcodes.Quantity // åå°å·²åææ°é }) .Where(it => it.Dab001 == c_mes_inv_item_barcodes.WorkNo && it.Dab002 == c_mes_inv_item_barcodes.WorkLine && it.Dab003 == c_mes_inv_item_barcodes.ItemId.ToString()) .ExecuteCommand(); } // æ¥æä¸è¯éæ - æ´æ°å·¥å表(WOMDAB)ç¸å ³æ°é else if (C_MES_ITEM_TBL.Tbl005 == "æ¥æä¸è¯éæ") { totalResult += Db.Updateable<Womdab>() .SetColumns(it => new Womdab { Dab007 = it.Dab007 - c_mes_inv_item_barcodes.Quantity, // åå°å·¥åæ°é Dab022 = (it.Dab022 ?? 0) + c_mes_inv_item_barcodes.Quantity, // å¢å éææ°é LlBl = (it.LlBl ?? 0) + (int)c_mes_inv_item_barcodes.Quantity, // å¢å æ¥æä¸è¯æ°é Dab020 = (it.Dab020 ?? 0) - c_mes_inv_item_barcodes.Quantity // åå°å·²åææ°é Dab007 = it.Dab007 - c_mes_inv_item_barcodes.Quantity, // åå°å·¥åæ°é Dab022 = (it.Dab022 ?? 0) + c_mes_inv_item_barcodes.Quantity, // å¢å éææ°é LpTl = (it.LpTl ?? 0) + (int)c_mes_inv_item_barcodes .Quantity, // å¢å è¯åéææ°é Dab020 = (it.Dab020 ?? 0) - c_mes_inv_item_barcodes.Quantity // åå°å·²åææ°é }) .Where(it => it.Dab001 == c_mes_inv_item_barcodes.WorkNo && it.Dab002 == c_mes_inv_item_barcodes.WorkLine && it.Dab003 == c_mes_inv_item_barcodes.ItemId.ToString()) && it.Dab002 == c_mes_inv_item_barcodes .WorkLine && it.Dab003 == c_mes_inv_item_barcodes .ItemId.ToString()) .ExecuteCommand(); } // æ¥æä¸è¯éæ - æ´æ°å·¥å表(WOMDAB)ç¸å ³æ°é else if (C_MES_ITEM_TBL.Tbl005 == "æ¥æä¸è¯éæ") totalResult += Db.Updateable<Womdab>() .SetColumns(it => new Womdab { Dab007 = it.Dab007 - c_mes_inv_item_barcodes.Quantity, // åå°å·¥åæ°é Dab022 = (it.Dab022 ?? 0) + c_mes_inv_item_barcodes.Quantity, // å¢å éææ°é LlBl = (it.LlBl ?? 0) + (int)c_mes_inv_item_barcodes .Quantity, // å¢å æ¥æä¸è¯æ°é Dab020 = (it.Dab020 ?? 0) - c_mes_inv_item_barcodes.Quantity // åå°å·²åææ°é }) .Where(it => it.Dab001 == c_mes_inv_item_barcodes.WorkNo && it.Dab002 == c_mes_inv_item_barcodes .WorkLine && it.Dab003 == c_mes_inv_item_barcodes .ItemId.ToString()) .ExecuteCommand(); // æ´æ°éæåæç»è¡¨å·²éæ°é totalResult += Db.Updateable<MesItemTblDetail>() .SetColumns(it => new MesItemTblDetail { Tld006 = (it.Tld006 ?? 0) + (int)c_mes_inv_item_barcodes.Quantity // å¢å 已鿰é Tld006 = (it.Tld006 ?? 0) + (int)c_mes_inv_item_barcodes.Quantity // å¢å 已鿰é }) .Where(it => it.Tlmid == C_MES_ITEM_TBL.Id && it.Tld009 == c_mes_inv_item_barcodes.ItemId && it.Tld010 == c_mes_inv_item_barcodes.WorkLine) && it.Tld009 == c_mes_inv_item_barcodes.ItemId && it.Tld010 == c_mes_inv_item_barcodes.WorkLine) .ExecuteCommand(); } // ä½ä¸ä¸è¯éæ - æ´æ°å·¥å表åéæåæç»è¡¨ @@ -369,59 +347,66 @@ totalResult += Db.Updateable<Womdab>() .SetColumns(it => new Womdab { Dab022 = (it.Dab022 ?? 0) + c_mes_inv_item_barcodes.Quantity, // å¢å éææ°é ZyBl = (it.ZyBl ?? 0) + (int)c_mes_inv_item_barcodes.Quantity, // å¢å ä½ä¸ä¸è¯æ°é Dab020 = (it.Dab020 ?? 0) - c_mes_inv_item_barcodes.Quantity // åå°å·²åææ°é Dab022 = (it.Dab022 ?? 0) + c_mes_inv_item_barcodes.Quantity, // å¢å éææ°é ZyBl = (it.ZyBl ?? 0) + (int)c_mes_inv_item_barcodes .Quantity, // å¢å ä½ä¸ä¸è¯æ°é Dab020 = (it.Dab020 ?? 0) - c_mes_inv_item_barcodes.Quantity // åå°å·²åææ°é }) .Where(it => it.Dab001 == c_mes_inv_item_barcodes.WorkNo && it.Dab002 == c_mes_inv_item_barcodes.WorkLine && it.Dab003 == c_mes_inv_item_barcodes.ItemId.ToString()) && it.Dab002 == c_mes_inv_item_barcodes.WorkLine && it.Dab003 == c_mes_inv_item_barcodes.ItemId .ToString()) .ExecuteCommand(); // æ´æ°éæåæç»è¡¨å·²éæ°é totalResult += Db.Updateable<MesItemTblDetail>() .SetColumns(it => new MesItemTblDetail { Tld006 = (it.Tld006 ?? 0) + (int)c_mes_inv_item_barcodes.Quantity // å¢å 已鿰é Tld006 = (it.Tld006 ?? 0) + (int)c_mes_inv_item_barcodes.Quantity // å¢å 已鿰é }) .Where(it => it.Tlmid == C_MES_ITEM_TBL.Id && it.Tld009 == c_mes_inv_item_barcodes.ItemId && it.Tld010 == c_mes_inv_item_barcodes.WorkLine) && it.Tld009 == c_mes_inv_item_barcodes.ItemId && it.Tld010 == c_mes_inv_item_barcodes.WorkLine) .ExecuteCommand(); } // å¦æå¾ éæ°éçäºæ¬æ¬¡éææ°éï¼åæ´æ°æç»å®æç¶æ if ((C_MES_ITEM_TBL_DETAIL.Tld005 ?? 0) - (C_MES_ITEM_TBL_DETAIL.Tld006 ?? 0) == c_mes_inv_item_barcodes.Quantity) { if ((C_MES_ITEM_TBL_DETAIL.Tld005 ?? 0) - (C_MES_ITEM_TBL_DETAIL.Tld006 ?? 0) == c_mes_inv_item_barcodes.Quantity) totalResult += Db.Updateable<MesItemTblDetail>() .SetColumns(it => new MesItemTblDetail { Tld008 = 1 }) // è®¾ç½®å®ææ å¿ .SetColumns(it => new MesItemTblDetail { Tld008 = 1 }) // è®¾ç½®å®ææ å¿ .Where(it => it.Tlid == C_MES_ITEM_TBL_DETAIL.Tlid) .ExecuteCommand(); } // æ£æ¥éæåæ¯å¦æææç»é½å·²å®æ var remainingCount = Db.Queryable<MesItemTbl, MesItemTblDetail>((a, b) => new JoinQueryInfos(JoinType.Left, a.Id == b.Tlmid)) .Where((a, b) => a.BillNo == p_bill_no && (b.Tld005 ?? 0) - (b.Tld006 ?? 0) > 0) var remainingCount = Db.Queryable<MesItemTbl, MesItemTblDetail>( (a, b) => new JoinQueryInfos(JoinType.Left, a.Id == b.Tlmid)) .Where((a, b) => a.BillNo == p_bill_no && (b.Tld005 ?? 0) - (b.Tld006 ?? 0) > 0) .Count(); // å¦ææææç»é½å·²å®æï¼åæ´æ°éæåç¶æä¸ºå·²å®æ if (remainingCount < 1) { totalResult += Db.Updateable<MesItemTbl>() .SetColumns(it => it.Tbl020 == 1 ) // è®¾ç½®å®ææ å¿ .SetColumns(it => it.Tbl020 == 1) // è®¾ç½®å®ææ å¿ .Where(it => it.BillNo == p_bill_no) .ExecuteCommand(); } if (totalResult < 3) { throw new Exception("æå ¥å¤±è´¥"); } if (totalResult < 3) throw new Exception("æå ¥å¤±è´¥"); return totalResult; }); // 设置è¿åç»æ // c_result = $"001[,{c_mes_inv_item_barcodes.ItemNo},{c_quantity},æ«ç æåï¼,åèåºä½@ç©æ@å¾ éæ°é{c_in_field_valT}"; util/BillNo.cs
@@ -6,15 +6,16 @@ public static class BillNo { /// <summary> /// TL(éè´éæå),DH(å°è´§å),JY(æ£éªå),IN(å ¥åºå) /// TL(éè´éæå),DH(å°è´§å),JY(æ£éªå),IN(å ¥åºå),TMBH(æ¡ç ç¼å·) /// </summary> /// <param name="billType"></param> /// <returns></returns> public static string GetBillNo(string billType) public static string GetBillNo(string billType, string itemNo = "") { var sbSql = new StringBuilder(); sbSql.Append(" DECLARE @hNo nvarchar(50) "); sbSql.Append(" EXEC [getOrderNo] '" + billType + "',@hNo output"); sbSql.Append(" EXEC [getOrderNo] '" + billType + "',@hNo output,'" + itemNo + "'"); sbSql.Append(" select @hNo as t1"); var str = ""; try