| | |
| | | using System.Dynamic; |
| | | using Microsoft.AspNetCore.Mvc; |
| | | using NewPdaSqlServer.Dto.service; |
| | | using NewPdaSqlServer.service.@base; |
| | | using NewPdaSqlServer.service.Warehouse; |
| | | using NewPdaSqlServer.util; |
| | | |
| | |
| | | public class TransferOutController : ControllerBase |
| | | { |
| | | private readonly TransferOutManager _manager = new(); |
| | | |
| | | private readonly MesPrintMangeer _mCf = new(); |
| | | |
| | | #region åºç¡CRUD |
| | | |
| | |
| | | } |
| | | } |
| | | |
| | | |
| | | [HttpPost("GetTransferInDetailListByBillNo")] |
| | | public ResponseResult GetTransferInDetailListByBillNo( |
| | | [FromBody] WarehouseQuery query) |
| | | { |
| | | try |
| | | { |
| | | dynamic resultInfos = new ExpandoObject(); |
| | | resultInfos.tbBillList = |
| | | _manager.GetTransferInDetailListByBillNo(query); |
| | | return new ResponseResult |
| | | { |
| | | status = 0, |
| | | message = "OK", |
| | | data = resultInfos |
| | | }; |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | return ResponseResult.ResponseError(ex); |
| | | } |
| | | } |
| | | |
| | | |
| | | /// <summary> |
| | | /// æ«ææ¡ç è¿è¡è°æ¨åºåºå¤ç |
| | | /// </summary> |
| | |
| | | try |
| | | { |
| | | dynamic resultInfos = new ExpandoObject(); |
| | | var (form, items) = _manager.ScanMoveBarcode(query); |
| | | resultInfos.form = form; |
| | | resultInfos.items = items; |
| | | resultInfos.tbBillList = _manager.ScanMoveBarcode(query); |
| | | if (resultInfos.tbBillList.result == "2") |
| | | { |
| | | return new ResponseResult |
| | | { |
| | | status = Convert.ToInt32(resultInfos.tbBillList.result), |
| | | message = resultInfos.tbBillList.strMsg, |
| | | data = resultInfos |
| | | }; |
| | | } |
| | | return new ResponseResult |
| | | { |
| | | status = 0, |
| | |
| | | /// </remarks> |
| | | /// <response code="200">å岿å</response> |
| | | /// <response code="400">åå²å¤±è´¥ï¼è¿åå
·ä½é误信æ¯</response> |
| | | [HttpPost("SplitBarcode")] |
| | | public ResponseResult SplitBarcode([FromBody] WarehouseQuery query) |
| | | [HttpPost("ScanCodeCF")] |
| | | public ResponseResult ScanCodeCF(WarehouseQuery query) |
| | | { |
| | | try |
| | | { |
| | | dynamic resultInfos = new ExpandoObject(); |
| | | var message = _manager.SplitBarcode(query); |
| | | resultInfos.tbBillList = message; |
| | | resultInfos.tbBillList = new ExpandoObject(); |
| | | resultInfos.tbBillList.printInfo = _mCf.getPrintInfo(query); |
| | | var scanResult = _manager.ScanCodeCF(query); |
| | | resultInfos.tbBillList.cfBarInfo = _mCf.getCfInfo(scanResult); |
| | | return new ResponseResult |
| | | { |
| | | status = 0, |
| ¶Ô±ÈÐÂÎļþ |
| | |
| | | using System.Dynamic; |
| | | using Microsoft.AspNetCore.Mvc; |
| | | using NewPdaSqlServer.Dto.service; |
| | | using NewPdaSqlServer.entity; |
| | | using NewPdaSqlServer.service.@base; |
| | | using NewPdaSqlServer.service.Wom; |
| | | using NewPdaSqlServer.util; |
| | | |
| | | namespace NewPdaSqlServer.Controllers.Wom; |
| | | |
| | | [ApiController] |
| | | [Route("api/[controller]")] |
| | | public class WomdaaController : ControllerBase |
| | | { |
| | | private readonly WomdaaManager m = new(); |
| | | private readonly MesPrintMangeer _mCf = new(); |
| | | |
| | | #region çäº§é¢æ |
| | | |
| | | //GetProductionPickDaa001 |
| | | /// <summary> |
| | | /// æ¨¡ç³æ¥è¯¢å·¥åå·å¹¶è¿å |
| | | /// </summary> |
| | | /// <returns></returns> |
| | | [HttpPost("GetProductionPickDaa001")] |
| | | public ResponseResult GetProductionPickDaa001(WarehouseQuery query) |
| | | { |
| | | try |
| | | { |
| | | dynamic resultInfos = new ExpandoObject(); |
| | | resultInfos.tbBillList = m.GetProductionPickDaa001(query); |
| | | return new ResponseResult |
| | | { |
| | | status = 0, |
| | | message = "OK", |
| | | data = resultInfos |
| | | }; |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | return ResponseResult.ResponseError(ex); |
| | | } |
| | | } |
| | | |
| | | //GetItemsByDaa001 |
| | | /// <summary> |
| | | /// æ ¹æ®å·¥åå·è·å代é¢ç©ææç» |
| | | /// </summary> |
| | | /// <returns></returns> |
| | | [HttpPost("GetItemsByDaa001")] |
| | | public ResponseResult GetItemsByDaa001(WarehouseQuery query) |
| | | { |
| | | try |
| | | { |
| | | dynamic resultInfos = new ExpandoObject(); |
| | | resultInfos.tbBillList = m.GetItemsByDaa001(query); |
| | | return new ResponseResult |
| | | { |
| | | status = 0, |
| | | message = "OK", |
| | | data = resultInfos |
| | | }; |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | return ResponseResult.ResponseError(ex); |
| | | } |
| | | } |
| | | |
| | | //ScanCode |
| | | [HttpPost("ScanCode")] |
| | | public ResponseResult ScanCode(WarehouseQuery query) |
| | | { |
| | | try |
| | | { |
| | | dynamic resultInfos = new ExpandoObject(); |
| | | resultInfos.tbBillList = m.ScanCode(query); |
| | | if(resultInfos.tbBillList.result == "2") |
| | | { |
| | | return new ResponseResult |
| | | { |
| | | status = Convert.ToInt32(resultInfos.tbBillList.result), |
| | | message = resultInfos.tbBillList.strMsg, |
| | | data = resultInfos |
| | | }; |
| | | } |
| | | return new ResponseResult |
| | | { |
| | | status = 0, |
| | | message = "OK", |
| | | data = resultInfos |
| | | }; |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | return ResponseResult.ResponseError(ex); |
| | | } |
| | | } |
| | | |
| | | //ScanCodeCF |
| | | [HttpPost("ScanCodeCF")] |
| | | public ResponseResult ScanCodeCF(WarehouseQuery query) |
| | | { |
| | | try |
| | | { |
| | | dynamic resultInfos = new ExpandoObject(); |
| | | resultInfos.tbBillList = new ExpandoObject(); |
| | | //resultInfos.tbBillList.printInfo = _mCf.getPrintInfo(query); |
| | | var scanResult = m.ScanCodeCF(query); |
| | | resultInfos.tbBillList.cfBarInfo = _mCf.getCfInfo(scanResult); |
| | | return new ResponseResult |
| | | { |
| | | status = 0, |
| | | message = "OK", |
| | | data = resultInfos |
| | | }; |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | return ResponseResult.ResponseError(ex); |
| | | } |
| | | } |
| | | |
| | | /// <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] Womdaa 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] Womdaa 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] Womdaa 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); |
| | | } |
| | | } |
| | | #endregion |
| | | |
| | | #region ç°åºç®¡ç |
| | | |
| | | |
| | | /// <summary> |
| | | /// æ«ææ³¨å¡ç ï¼è·åå·¥ååæ¡ç ä¿¡æ¯ |
| | | /// </summary> |
| | | /// <returns></returns> |
| | | [HttpPost("getZsBarInfo")] |
| | | public ResponseResult getZsBarInfo([FromBody] dynamic query) |
| | | { |
| | | try |
| | | { |
| | | dynamic resultInfos = new ExpandoObject(); |
| | | // å
åå§åtbBillList屿§ |
| | | resultInfos.tbBillList = new ExpandoObject(); |
| | | resultInfos.tbBillList.ZsBarInfo = m.getZsBarInfo(query); |
| | | resultInfos.tbBillList.Traceability = m.getTraceability(query); |
| | | return new ResponseResult |
| | | { |
| | | status = 0, |
| | | message = "OK", |
| | | data = resultInfos |
| | | }; |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | return ResponseResult.ResponseError(ex); |
| | | } |
| | | } |
| | | |
| | | |
| | | /// <summary> |
| | | /// 产åç»å®ï¼è¿½æº¯ç åæµæ°´ç ç»å® |
| | | /// </summary> |
| | | /// <returns></returns> |
| | | [HttpPost("ProductBinding")] |
| | | public ResponseResult ProductBinding([FromBody] dynamic query) |
| | | { |
| | | try |
| | | { |
| | | dynamic resultInfos = new ExpandoObject(); |
| | | // å
åå§åtbBillList屿§ |
| | | resultInfos.tbBillList = new ExpandoObject(); |
| | | resultInfos.tbBillList = m.ProductBinding(query); |
| | | return new ResponseResult |
| | | { |
| | | status = 0, |
| | | message = "OK", |
| | | data = resultInfos |
| | | }; |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | return ResponseResult.ResponseError(ex); |
| | | } |
| | | } |
| | | |
| | | /// <summary> |
| | | /// è·å塿¿ä¿¡æ¯ |
| | | /// </summary> |
| | | /// <returns></returns> |
| | | [HttpPost("getKbBarInfo")] |
| | | public ResponseResult getKbBarInfo([FromBody] dynamic query) |
| | | { |
| | | try |
| | | { |
| | | dynamic resultInfos = new ExpandoObject(); |
| | | // å
åå§åtbBillList屿§ |
| | | resultInfos.tbBillList = new ExpandoObject(); |
| | | resultInfos.tbBillList.KbBarInfo = m.getKbBarInfo(query); |
| | | resultInfos.tbBillList.KbBarMxInfo = m.getKbBarMxInfo(query); |
| | | return new ResponseResult |
| | | { |
| | | status = 0, |
| | | message = "OK", |
| | | data = resultInfos |
| | | }; |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | return ResponseResult.ResponseError(ex); |
| | | } |
| | | } |
| | | |
| | | /// <summary> |
| | | /// è·åç®±ç ä¿¡æ¯ |
| | | /// </summary> |
| | | /// <returns></returns> |
| | | [HttpPost("getXBarInfo")] |
| | | public ResponseResult getXBarInfo([FromBody] dynamic query) |
| | | { |
| | | try |
| | | { |
| | | dynamic resultInfos = new ExpandoObject(); |
| | | // å
åå§åtbBillList屿§ |
| | | resultInfos.tbBillList = new ExpandoObject(); |
| | | resultInfos.tbBillList.XBarInfo = m.getXBarInfo(query); |
| | | return new ResponseResult |
| | | { |
| | | status = 0, |
| | | message = "OK", |
| | | data = resultInfos |
| | | }; |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | return ResponseResult.ResponseError(ex); |
| | | } |
| | | } |
| | | |
| | | /// <summary> |
| | | /// ç»å®ç®±ç 䏿æ¿ç |
| | | /// </summary> |
| | | /// <returns></returns> |
| | | [HttpPost("submitAllChecked")] |
| | | public ResponseResult submitAllChecked([FromBody] dynamic query) |
| | | { |
| | | try |
| | | { |
| | | dynamic resultInfos = new ExpandoObject(); |
| | | // å
åå§åtbBillList屿§ |
| | | resultInfos.tbBillList = new ExpandoObject(); |
| | | resultInfos.tbBillList = m.submitAllChecked(query); |
| | | return new ResponseResult |
| | | { |
| | | status = 0, |
| | | message = "OK", |
| | | data = resultInfos |
| | | }; |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | return ResponseResult.ResponseError(ex); |
| | | } |
| | | } |
| | | |
| | | /// <summary> |
| | | /// æ ¸å¯¹éæ£ |
| | | /// </summary> |
| | | /// <returns></returns> |
| | | [HttpPost("submitInspection")] |
| | | public ResponseResult submitInspection([FromBody] dynamic query) |
| | | { |
| | | try |
| | | { |
| | | dynamic resultInfos = new ExpandoObject(); |
| | | // å
åå§åtbBillList屿§ |
| | | resultInfos.tbBillList = new ExpandoObject(); |
| | | resultInfos.tbBillList = m.SubmitKbInspection(query); |
| | | return new ResponseResult |
| | | { |
| | | status = 0, |
| | | message = "OK", |
| | | data = resultInfos |
| | | }; |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | return ResponseResult.ResponseError(ex); |
| | | } |
| | | } |
| | | |
| | | //GetItemsXcsl |
| | | /// <summary> |
| | | /// æ ¹æ®å·¥åå·è·åå¾
æ¶æç©ææç» |
| | | /// </summary> |
| | | /// <returns></returns> |
| | | [HttpPost("GetItemsXcsl")] |
| | | public ResponseResult GetItemsXcsl(WarehouseQuery query) |
| | | { |
| | | try |
| | | { |
| | | dynamic resultInfos = new ExpandoObject(); |
| | | resultInfos.tbBillList = m.GetItemsXcsl(query); |
| | | return new ResponseResult |
| | | { |
| | | status = 0, |
| | | message = "OK", |
| | | data = resultInfos |
| | | }; |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | return ResponseResult.ResponseError(ex); |
| | | } |
| | | } |
| | | |
| | | |
| | | //GetItemsXcsl |
| | | /// <summary> |
| | | /// ç©ææ¡ç æ¶æ |
| | | /// </summary> |
| | | /// <returns></returns> |
| | | [HttpPost("ScanXcsl")] |
| | | public ResponseResult ScanXcsl(dynamic query) |
| | | { |
| | | try |
| | | { |
| | | dynamic resultInfos = new ExpandoObject(); |
| | | resultInfos.tbBillList = m.ScanXcsl(query); |
| | | return new ResponseResult |
| | | { |
| | | status = 0, |
| | | message = "OK", |
| | | data = resultInfos |
| | | }; |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | return ResponseResult.ResponseError(ex); |
| | | } |
| | | } |
| | | |
| | | //GetItemsXcsl |
| | | /// <summary> |
| | | /// æ ¹æ®çº¿ä½è·å仪å¨éé |
| | | /// </summary> |
| | | /// <returns></returns> |
| | | [HttpPost("GetWeightByXt")] |
| | | public ResponseResult GetWeightByXt(dynamic query) |
| | | { |
| | | try |
| | | { |
| | | dynamic resultInfos = new ExpandoObject(); |
| | | resultInfos.tbBillList = m.GetWeightByXt(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> |
| | | [HttpPost("GetXcslDaa")] |
| | | public ResponseResult GetXcslDaa([FromBody] dynamic query) |
| | | { |
| | | try |
| | | { |
| | | dynamic resultInfos = new ExpandoObject(); |
| | | resultInfos.tbBillList = m.GetXcslDaa(query); |
| | | return new ResponseResult |
| | | { |
| | | status = 0, |
| | | message = "OK", |
| | | data = resultInfos |
| | | }; |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | return ResponseResult.ResponseError(ex); |
| | | } |
| | | } |
| | | |
| | | |
| | | //GetItemsXctl |
| | | /// <summary> |
| | | /// æ ¹æ®å·¥åå·è·åå¾
ææç©ææç» |
| | | /// </summary> |
| | | /// <returns></returns> |
| | | [HttpPost("GetItemsXctl")] |
| | | public ResponseResult GetItemsXctl(WarehouseQuery query) |
| | | { |
| | | try |
| | | { |
| | | dynamic resultInfos = new ExpandoObject(); |
| | | resultInfos.tbBillList = m.GetItemsXctl(query); |
| | | return new ResponseResult |
| | | { |
| | | status = 0, |
| | | message = "OK", |
| | | data = resultInfos |
| | | }; |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | return ResponseResult.ResponseError(ex); |
| | | } |
| | | } |
| | | |
| | | //GetItemsXcsl |
| | | /// <summary> |
| | | /// ç©ææ¡ç ææ |
| | | /// </summary> |
| | | /// <returns></returns> |
| | | [HttpPost("ScanXctl")] |
| | | public ResponseResult ScanXctl(dynamic query) |
| | | { |
| | | try |
| | | { |
| | | dynamic resultInfos = new ExpandoObject(); |
| | | resultInfos.tbBillList = m.ScanXctl(query); |
| | | return new ResponseResult |
| | | { |
| | | status = 0, |
| | | message = "OK", |
| | | data = resultInfos |
| | | }; |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | return ResponseResult.ResponseError(ex); |
| | | } |
| | | } |
| | | |
| | | #endregion |
| | | } |
| | |
| | | public class ProductionPickDto |
| | | { |
| | | public string? ItemModel { get; set; } |
| | | public string? itemNo { get; set; } |
| | | public string? PlanNo { get; set; } |
| | | public string? daa001 { get; set; } |
| | | |
| ¶Ô±ÈÐÂÎļþ |
| | |
| | | using SqlSugar; |
| | | |
| | | namespace NewPdaSqlServer.entity; |
| | | |
| | | /// <summary> |
| | | /// </summary> |
| | | [SugarTable("WOMDAAHB")] |
| | | public class Womdaahb |
| | | { |
| | | /// <summary> |
| | | /// é»è®¤å¼: (newid()) |
| | | /// </summary> |
| | | [SugarColumn(ColumnName = "guid", IsPrimaryKey = true)] |
| | | public Guid Guid { get; set; } |
| | | |
| | | /// <summary> |
| | | /// </summary> |
| | | [SugarColumn(ColumnName = "pbaGuid")] |
| | | public Guid? PbaGuid { get; set; } |
| | | |
| | | /// <summary> |
| | | /// </summary> |
| | | [SugarColumn(ColumnName = "caaGuid")] |
| | | public Guid? CaaGuid { get; set; } |
| | | |
| | | ///// <summary> |
| | | ///// èªå¢å |
| | | ///// </summary> |
| | | //[SugarColumn(ColumnName = "id")] |
| | | //public int? Id { get; set; } |
| | | |
| | | ///// <summary> |
| | | ///// æäº§ID |
| | | ///// </summary> |
| | | //[SugarColumn(ColumnName = "pid")] |
| | | //public int? Pid { get; set; } |
| | | |
| | | /// <summary> |
| | | /// åå· |
| | | /// </summary> |
| | | [SugarColumn(ColumnName = "daa001")] |
| | | public string? Daa001 { get; set; } |
| | | |
| | | /// <summary> |
| | | /// 产åID |
| | | /// </summary> |
| | | [SugarColumn(ColumnName = "daa002")] |
| | | public string? Daa002 { get; set; } |
| | | |
| | | /// <summary> |
| | | /// 产ååç§° |
| | | /// </summary> |
| | | [SugarColumn(ColumnName = "daa003")] |
| | | public string? Daa003 { get; set; } |
| | | |
| | | /// <summary> |
| | | /// 产åè§æ ¼ |
| | | /// </summary> |
| | | [SugarColumn(ColumnName = "daa004")] |
| | | public string? Daa004 { get; set; } |
| | | |
| | | /// <summary> |
| | | /// åä½ |
| | | /// </summary> |
| | | [SugarColumn(ColumnName = "daa005")] |
| | | public string? Daa005 { get; set; } |
| | | |
| | | /// <summary> |
| | | /// ERPé¢è®¡å¼å·¥æ¶é´ |
| | | /// </summary> |
| | | [SugarColumn(ColumnName = "daa006")] |
| | | public DateTime? Daa006 { get; set; } |
| | | |
| | | /// <summary> |
| | | /// ERPé¢è®¡å®å·¥æ¶é´ |
| | | /// </summary> |
| | | [SugarColumn(ColumnName = "daa007")] |
| | | public DateTime? Daa007 { get; set; } |
| | | |
| | | /// <summary> |
| | | /// 工忰é |
| | | /// </summary> |
| | | [SugarColumn(ColumnName = "daa008")] |
| | | public int? Daa008 { get; set; } |
| | | |
| | | /// <summary> |
| | | /// 夿³¨ |
| | | /// </summary> |
| | | [SugarColumn(ColumnName = "daa009")] |
| | | public string? Daa009 { get; set; } |
| | | |
| | | /// <summary> |
| | | /// å
¥åºæ°é |
| | | /// </summary> |
| | | [SugarColumn(ColumnName = "daa010")] |
| | | public int? Daa010 { get; set; } |
| | | |
| | | /// <summary> |
| | | /// å·²ç产é |
| | | /// </summary> |
| | | [SugarColumn(ColumnName = "daa011")] |
| | | public int? Daa011 { get; set; } |
| | | |
| | | /// <summary> |
| | | /// æ¥åºæ°é |
| | | /// </summary> |
| | | [SugarColumn(ColumnName = "daa012")] |
| | | public int? Daa012 { get; set; } |
| | | |
| | | /// <summary> |
| | | /// å·¥ä½è½¦é´ |
| | | /// </summary> |
| | | [SugarColumn(ColumnName = "daa013")] |
| | | public string? Daa013 { get; set; } |
| | | |
| | | /// <summary> |
| | | /// ææååå· |
| | | /// </summary> |
| | | [SugarColumn(ColumnName = "daa014")] |
| | | public string? Daa014 { get; set; } |
| | | |
| | | /// <summary> |
| | | /// çäº§çº¿å« |
| | | /// </summary> |
| | | [SugarColumn(ColumnName = "daa015")] |
| | | public string? Daa015 { get; set; } |
| | | |
| | | /// <summary> |
| | | /// å®é
å¼å·¥æ¥ |
| | | /// </summary> |
| | | [SugarColumn(ColumnName = "daa016")] |
| | | public DateTime? Daa016 { get; set; } |
| | | |
| | | /// <summary> |
| | | /// å®é
å®å·¥æ¥ |
| | | /// </summary> |
| | | [SugarColumn(ColumnName = "daa017")] |
| | | public DateTime? Daa017 { get; set; } |
| | | |
| | | /// <summary> |
| | | /// å·¥åç¶æ |
| | | /// </summary> |
| | | [SugarColumn(ColumnName = "daa018")] |
| | | public string? Daa018 { get; set; } |
| | | |
| | | /// <summary> |
| | | /// é½å¥ç¶æ |
| | | /// </summary> |
| | | [SugarColumn(ColumnName = "daa019")] |
| | | public string? Daa019 { get; set; } |
| | | |
| | | /// <summary> |
| | | /// å®¡æ ¸ç |
| | | /// </summary> |
| | | [SugarColumn(ColumnName = "fstatus")] |
| | | public int? Fstatus { get; set; } |
| | | |
| | | /// <summary> |
| | | /// å®¡æ ¸æ¥æ |
| | | /// </summary> |
| | | [SugarColumn(ColumnName = "check_date")] |
| | | public DateTime? CheckDate { get; set; } |
| | | |
| | | /// <summary> |
| | | /// å®¡æ ¸äºº |
| | | /// </summary> |
| | | [SugarColumn(ColumnName = "check_user")] |
| | | public string? CheckUser { get; set; } |
| | | |
| | | /// <summary> |
| | | /// 线å«ç¼ç |
| | | /// </summary> |
| | | [SugarColumn(ColumnName = "daa020")] |
| | | public string? Daa020 { get; set; } |
| | | |
| | | /// <summary> |
| | | /// ä»»å¡ååå· |
| | | /// </summary> |
| | | [SugarColumn(ColumnName = "daa021")] |
| | | public string? Daa021 { get; set; } |
| | | |
| | | /// <summary> |
| | | /// éç¥å¤æï¼0-æªéç¥ï¼1-éç¥ |
| | | /// é»è®¤å¼: ((0)) |
| | | /// </summary> |
| | | [SugarColumn(ColumnName = "daa022")] |
| | | public int? Daa022 { get; set; } |
| | | |
| | | /// <summary> |
| | | /// ç产åºå· |
| | | /// </summary> |
| | | [SugarColumn(ColumnName = "daa023")] |
| | | public int? Daa023 { get; set; } |
| | | |
| | | /// <summary> |
| | | /// æäº§æ¥æ |
| | | /// </summary> |
| | | [SugarColumn(ColumnName = "daa024")] |
| | | public string? Daa024 { get; set; } |
| | | |
| | | /// <summary> |
| | | /// é¦ä»¶æ¯å¦æ£éª1-æ£éªï¼0æªæ£éª |
| | | /// </summary> |
| | | [SugarColumn(ColumnName = "daa025")] |
| | | public string? Daa025 { get; set; } |
| | | |
| | | /// <summary> |
| | | /// é¦ä»¶æ£éªç»æ |
| | | /// </summary> |
| | | [SugarColumn(ColumnName = "daa026")] |
| | | public string? Daa026 { get; set; } |
| | | |
| | | /// <summary> |
| | | /// å·²æ¥æ£ï¼0-æªæ¥æ£ï¼1-å·²æ¥æ£ |
| | | /// </summary> |
| | | [SugarColumn(ColumnName = "is_reportcheck")] |
| | | public int? IsReportcheck { get; set; } |
| | | |
| | | /// <summary> |
| | | /// æ¥æ£äºº |
| | | /// </summary> |
| | | [SugarColumn(ColumnName = "usname")] |
| | | public string? Usname { get; set; } |
| | | |
| | | /// <summary> |
| | | /// æ¥æ£æ¶é´ |
| | | /// </summary> |
| | | [SugarColumn(ColumnName = "reporttime")] |
| | | public DateTime? Reporttime { get; set; } |
| | | |
| | | /// <summary> |
| | | /// æºå°ç¼å· |
| | | /// </summary> |
| | | [SugarColumn(ColumnName = "machine_no")] |
| | | public string? MachineNo { get; set; } |
| | | |
| | | /// <summary> |
| | | /// 夿宿1-宿ï¼0æªå®æ |
| | | /// </summary> |
| | | [SugarColumn(ColumnName = "daa027")] |
| | | public int? Daa027 { get; set; } |
| | | |
| | | /// <summary> |
| | | /// 夿宿æ¶é´ |
| | | /// </summary> |
| | | [SugarColumn(ColumnName = "daa028")] |
| | | public string? Daa028 { get; set; } |
| | | |
| | | /// <summary> |
| | | /// æ åå·¥æ¶ |
| | | /// </summary> |
| | | [SugarColumn(ColumnName = "prod_hour")] |
| | | public int? ProdHour { get; set; } |
| | | |
| | | /// <summary> |
| | | /// åäººå°æ¶äº§è½ |
| | | /// </summary> |
| | | [SugarColumn(ColumnName = "person_hour_capacity")] |
| | | public int? PersonHourCapacity { get; set; } |
| | | |
| | | /// <summary> |
| | | /// ç论æ 产 |
| | | /// </summary> |
| | | [SugarColumn(ColumnName = "the_capacity")] |
| | | public int? TheCapacity { get; set; } |
| | | |
| | | /// <summary> |
| | | /// 计åç¨äººæ° |
| | | /// </summary> |
| | | [SugarColumn(ColumnName = "plan_personnel")] |
| | | public int? PlanPersonnel { get; set; } |
| | | |
| | | /// <summary> |
| | | /// è®¡åæ åäº§è½ |
| | | /// </summary> |
| | | [SugarColumn(ColumnName = "plan_capacity")] |
| | | public int? PlanCapacity { get; set; } |
| | | |
| | | /// <summary> |
| | | /// çè®ºç¨æ¶/M |
| | | /// </summary> |
| | | [SugarColumn(ColumnName = "the_min")] |
| | | public int? TheMin { get; set; } |
| | | |
| | | /// <summary> |
| | | /// çè®ºç¨æ¶/H |
| | | /// </summary> |
| | | [SugarColumn(ColumnName = "the_hour")] |
| | | public int? TheHour { get; set; } |
| | | |
| | | /// <summary> |
| | | /// 线ä½ç±»å« |
| | | /// </summary> |
| | | [SugarColumn(ColumnName = "line_type")] |
| | | public string? LineType { get; set; } |
| | | |
| | | /// <summary> |
| | | /// æ åäººæ° |
| | | /// </summary> |
| | | [SugarColumn(ColumnName = "personnel")] |
| | | public int? Personnel { get; set; } |
| | | |
| | | /// <summary> |
| | | /// æ¢çº¿æ¶é´ |
| | | /// </summary> |
| | | [SugarColumn(ColumnName = "change_line_time")] |
| | | public int? ChangeLineTime { get; set; } |
| | | |
| | | /// <summary> |
| | | /// 伿¯æ¶é´ |
| | | /// </summary> |
| | | [SugarColumn(ColumnName = "rest_time")] |
| | | public int? RestTime { get; set; } |
| | | |
| | | /// <summary> |
| | | /// æäº§åºå· |
| | | /// </summary> |
| | | [SugarColumn(ColumnName = "schedule_order")] |
| | | public int? ScheduleOrder { get; set; } |
| | | |
| | | /// <summary> |
| | | /// MESé¢è®¡å¼å·¥æ¶é´ |
| | | /// </summary> |
| | | [SugarColumn(ColumnName = "mes_start_prod")] |
| | | public DateTime? MesStartProd { get; set; } |
| | | |
| | | /// <summary> |
| | | /// MESé¢è®¡å®å·¥æ¶é´ |
| | | /// </summary> |
| | | [SugarColumn(ColumnName = "mes_end_prod")] |
| | | public DateTime? MesEndProd { get; set; } |
| | | |
| | | /// <summary> |
| | | /// æäº§æ¨éæ è¯ |
| | | /// </summary> |
| | | [SugarColumn(ColumnName = "prodts")] |
| | | public int? Prodts { get; set; } |
| | | |
| | | /// <summary> |
| | | /// é¢è®¡å¤ææ¶é´ |
| | | /// </summary> |
| | | [SugarColumn(ColumnName = "prepare_time")] |
| | | public DateTime? PrepareTime { get; set; } |
| | | |
| | | /// <summary> |
| | | /// æä»¶æå
¥äººæ° |
| | | /// </summary> |
| | | [SugarColumn(ColumnName = "cj_worker")] |
| | | public int? CjWorker { get; set; } |
| | | |
| | | /// <summary> |
| | | /// æä»¶è®¡åæå
¥äººæ° |
| | | /// </summary> |
| | | [SugarColumn(ColumnName = "p_cj_worker")] |
| | | public int? PCjWorker { get; set; } |
| | | |
| | | /// <summary> |
| | | /// æä»¶æ¥äº§é |
| | | /// </summary> |
| | | [SugarColumn(ColumnName = "cj_daily_out")] |
| | | public int? CjDailyOut { get; set; } |
| | | |
| | | /// <summary> |
| | | /// æä»¶æ åå·¥æ¶ |
| | | /// </summary> |
| | | [SugarColumn(ColumnName = "cj_std_hour")] |
| | | public int? CjStdHour { get; set; } |
| | | |
| | | /// <summary> |
| | | /// é¡çæå
¥äººæ° |
| | | /// </summary> |
| | | [SugarColumn(ColumnName = "hx_worker")] |
| | | public int? HxWorker { get; set; } |
| | | |
| | | /// <summary> |
| | | /// é¡ç计åæå
¥äººæ° |
| | | /// </summary> |
| | | [SugarColumn(ColumnName = "p_hx_worker")] |
| | | public int? PHxWorker { get; set; } |
| | | |
| | | /// <summary> |
| | | /// é¡çæ¥äº§é |
| | | /// </summary> |
| | | [SugarColumn(ColumnName = "hx_daily_out")] |
| | | public int? HxDailyOut { get; set; } |
| | | |
| | | /// <summary> |
| | | /// é¡çæ åå·¥æ¶ |
| | | /// </summary> |
| | | [SugarColumn(ColumnName = "hx_std_hour")] |
| | | public int? HxStdHour { get; set; } |
| | | |
| | | /// <summary> |
| | | /// æä»¶æ°é |
| | | /// </summary> |
| | | [SugarColumn(ColumnName = "cj_num")] |
| | | public int? CjNum { get; set; } |
| | | |
| | | /// <summary> |
| | | /// å®¢æ· |
| | | /// </summary> |
| | | [SugarColumn(ColumnName = "cust")] |
| | | public string? Cust { get; set; } |
| | | |
| | | /// <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; } |
| | | } |
| | |
| | | try |
| | | { |
| | | // è°ç¨åå¨è¿ç¨ |
| | | var parameters = new List<SqlParameter> |
| | | { |
| | | new SqlParameter("@c_user", query.userName), |
| | | new SqlParameter("@p_bill_no", query.billNo ?? string.Empty), |
| | | new SqlParameter("@p_item_barcode", query.barcode), |
| | | new SqlParameter("@p_bl_no", query.blNo), |
| | | new SqlParameter("@p_type", query.Type), |
| | | new SqlParameter("@outMsg", SqlDbType.NVarChar, 2000) { Direction = ParameterDirection.Output }, |
| | | new SqlParameter("@outSum", SqlDbType.Int) { Direction = ParameterDirection.Output }, |
| | | new SqlParameter("@barcode_num", SqlDbType.Decimal) { Direction = ParameterDirection.Output }, |
| | | new SqlParameter("@split_num", SqlDbType.Decimal) { Direction = ParameterDirection.Output } |
| | | }; |
| | | var parameters = new SqlParameter[] |
| | | { |
| | | new SqlParameter("@C_USER", SqlDbType.NVarChar, 100) { Value = query.userName ?? string.Empty }, |
| | | new SqlParameter("@P_BILL_NO", SqlDbType.NVarChar, 50) { Value = query.billNo ?? string.Empty }, |
| | | new SqlParameter("@P_ITEM_BARCODE", SqlDbType.NVarChar, 100) { Value = query.barcode ?? string.Empty }, |
| | | new SqlParameter("@P_BL_NO", SqlDbType.NVarChar, 100) { Value = query.blNo ?? string.Empty }, |
| | | new SqlParameter("@P_TYPE", SqlDbType.NVarChar, 20) { Value = query.Type ?? string.Empty }, |
| | | new SqlParameter("@OUT_MSG", SqlDbType.NVarChar, 2000) { Direction = ParameterDirection.Output }, |
| | | new SqlParameter("@OUT_SUM", SqlDbType.Int) { Direction = ParameterDirection.Output }, |
| | | new SqlParameter("@BARCODE_NUM", SqlDbType.Decimal) { |
| | | Direction = ParameterDirection.Output, |
| | | Precision = 18, |
| | | Scale = 10 |
| | | }, |
| | | new SqlParameter("@SPLIT_NUM", SqlDbType.Decimal) { |
| | | Direction = ParameterDirection.Output, |
| | | Precision = 18, |
| | | Scale = 10 |
| | | } |
| | | }; |
| | | |
| | | // æ§è¡åå¨è¿ç¨ |
| | | Db.Ado.ExecuteCommand( |
| | | "EXEC PRC_PDA_SCBLCL @c_user, @p_bill_no, @p_item_barcode, @p_bl_no, @p_type, @outMsg OUTPUT, @outSum OUTPUT, @barcode_num OUTPUT, @split_num OUTPUT", |
| | | parameters.ToArray()); |
| | | string procedureName = "PRC_PDA_SCBLCL"; |
| | | int res = DbHelperSQL.RunProcedure_NonQuery(procedureName, parameters); |
| | | |
| | | // è·åè¾åºåæ° |
| | | outMsg = parameters[5].Value?.ToString() ?? ""; |
| | | outSum = Convert.ToInt32(parameters[6].Value); |
| | | barcodeNum = Convert.ToDecimal(parameters[7].Value); |
| | | splitNum = Convert.ToDecimal(parameters[8].Value); |
| | | outSum = parameters[6].Value as int? ?? 0; // é»è®¤å¼æ ¹æ®éæ±è°æ´ |
| | | barcodeNum = parameters[7].Value as decimal? ?? 0m; |
| | | splitNum = parameters[8].Value as decimal? ?? 0m; |
| | | |
| | | // å¤çåå¨è¿ç¨è¿åçç»æ |
| | | if (outSum == 2) // éè¦æå |
| | |
| | | WarehouseQuery query) |
| | | { |
| | | |
| | | // è¾å
¥åæ°éªè¯ï¼ä¿æä¸åï¼ |
| | | // Validate input parameters |
| | | if (string.IsNullOrEmpty(query.userName)) |
| | | throw new Exception("ç¨æ·åä¸è½ä¸ºç©ºï¼"); |
| | | |
| | |
| | | if (string.IsNullOrEmpty(query.blNo)) |
| | | throw new Exception("è¡¥æåå·ä¸è½ä¸ºç©ºï¼"); |
| | | |
| | | // åå¤åå¨è¿ç¨åæ° |
| | | var outMsg = ""; |
| | | var outSum = -1; |
| | | var outCfBar = ""; |
| | | // Prepare parameters for the stored procedure |
| | | var parameters = new List<SugarParameter> |
| | | { |
| | | new SugarParameter("@C_USER", query.userName), |
| | | new SugarParameter("@P_BILL_NO", query.billNo), |
| | | new SugarParameter("@P_ITEM_BARCODE", query.barcode), |
| | | new SugarParameter("@P_BL_NO", query.blNo), |
| | | new SugarParameter("@P_TYPE", query.Type), |
| | | new SugarParameter("@NUM", query.Num), |
| | | new SugarParameter("@OUT_MSG", "", System.Data.DbType.String, ParameterDirection.Output), |
| | | new SugarParameter("@OUT_SUM", 0, System.Data.DbType.Int32, ParameterDirection.Output), |
| | | new SugarParameter("@OUT_CF_BAR", "", System.Data.DbType.String, ParameterDirection.Output) |
| | | }; |
| | | |
| | | try |
| | | // Execute the stored procedure |
| | | Db.Ado.UseStoredProcedure().ExecuteCommand("PRC_PDA_SCBLCL_CF", parameters); |
| | | |
| | | // Get output parameters |
| | | var outMsg = parameters.FirstOrDefault(p => p.ParameterName == "@OUT_MSG")?.Value?.ToString(); |
| | | var outSum = Convert.ToInt32(parameters.FirstOrDefault(p => p.ParameterName == "@OUT_SUM")?.Value ?? -1); |
| | | var outCfBar = parameters.FirstOrDefault(p => p.ParameterName == "@OUT_CF_BAR")?.Value?.ToString(); |
| | | |
| | | // Handle the result |
| | | if (outSum == -1) |
| | | { |
| | | // è°ç¨åå¨è¿ç¨ |
| | | var parameters = new List<SugarParameter> |
| | | { |
| | | new SugarParameter("@C_USER", query.userName), // æä½äººå |
| | | new SugarParameter("@P_BILL_NO", query.billNo), // å·¥åå· |
| | | new SugarParameter("@P_ITEM_BARCODE", query.barcode), // æ¡ç |
| | | new SugarParameter("@P_BL_NO", query.blNo), // è¡¥æåå· |
| | | new SugarParameter("@P_TYPE", query.Type), // ç±»å(ç产补æ/ç产è¶
é¢) |
| | | new SugarParameter("@NUM", query.Num), // æåæ° |
| | | new SugarParameter("@OUT_MSG", null, true), // è¾åºæ¶æ¯ |
| | | new SugarParameter("@OUT_SUM", null, true), // æ§è¡ç»æ(1æå,-1失败) |
| | | new SugarParameter("@OUT_CF_BAR", null, true) // è¾åºæ°æ¡ç ç¼å· |
| | | }; |
| | | |
| | | // æ§è¡åå¨è¿ç¨ |
| | | Db.Ado.UseStoredProcedure().ExecuteCommand("PRC_PDA_SCBLCL_CF", parameters); |
| | | |
| | | // è·åè¾åºåæ° |
| | | outMsg = parameters.First(p => p.ParameterName == "@OUT_MSG").Value?.ToString(); |
| | | outSum = Convert.ToInt32(parameters.First(p => p.ParameterName == "@OUT_SUM").Value); |
| | | outCfBar = parameters.First(p => p.ParameterName == "@OUT_CF_BAR").Value?.ToString(); |
| | | |
| | | // å¤çåå¨è¿ç¨è¿åç»æ |
| | | if (outSum != 1) |
| | | { |
| | | throw new Exception(outMsg ?? "æä½å¤±è´¥"); |
| | | } |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | throw new Exception(outMsg ?? ex.Message); |
| | | throw new Exception(outMsg ?? "æä½å¤±è´¥"); |
| | | } |
| | | |
| | | // è·åå¾
åææç»å表ï¼ä¿æä¸åï¼ |
| | | if (outSum == 2) |
| | | { |
| | | // Handle case where barcode needs to be split |
| | | // You might want to return the new barcode to the client |
| | | } |
| | | |
| | | // Get pending list for the supplement order |
| | | var pendingList = Db.Queryable<MesItemBl, MesItemBlDetail>((a, b) => |
| | | new JoinQueryInfos(JoinType.Left, a.Id == b.Mid)) |
| | | .Where((a, b) => a.BlNo == query.blNo |
| | |
| | | }) |
| | | .ToList(); |
| | | |
| | | // è¿åç»æï¼æåç¶æåå¾
åæåè¡¨ï¼ |
| | | return (outSum == 1, pendingList); |
| | | |
| | | //if (string.IsNullOrEmpty(query.userName)) |
| | |
| | | // æ ¹æ®pidæ¥è¯¢å¯¹åºçåºåºåå· |
| | | var billNos = Db.Queryable<MesDbck>() |
| | | .Where(x => result.Contains(x.Id) && x.FApproveStatus == 1) |
| | | .OrderBy(x => x.FCreateDate) |
| | | .Select(x => x.FBillNo) |
| | | .ToList(); |
| | | |
| | |
| | | /// </summary> |
| | | /// <param name="query">æ¥è¯¢åæ°,å
å«åæ®å·</param> |
| | | /// <returns>å¾
å¤ççè°æ¨åºåºæç»å表</returns> |
| | | public List<ItemDetailModel> GetTransferOutDetailListByBillNo( |
| | | public ProductionPickDto GetTransferOutDetailListByBillNo( |
| | | WarehouseQuery query) |
| | | { |
| | | var p_bill_no = query.billNo; |
| | | if (string.IsNullOrEmpty(query.billNo)) throw new Exception("è°æ¨åå·ä¸ºç©º"); |
| | | |
| | | // æ ¹æ®SQLæ¥è¯¢æ¡ä»¶è·åå¾
å¤ççåºåºæç» |
| | | // å
³èæ¥è¯¢TransferOutDetailãTransferOutåMesItemsä¸å¼ 表 |
| | | // ç鿡件:æªå®ææ°é大äº0ä¸åæ®å·²å®¡æ ¸ |
| | | var result = Db.Queryable<MesDbckDetail, MesDbck, MesItems>( |
| | | (b, a, s) => new JoinQueryInfos( |
| | | JoinType.Left, b.Pid == a.Id, |
| | | JoinType.Left, b.FMaterialId == s.Id.ToString())) |
| | | .Where((b, a, s) => |
| | | !((b.FQty ?? 0) == (b.SQty ?? 0) && (b.FQty ?? 0) == (b.RQty ?? 0)) |
| | | && a.FBillNo == p_bill_no // å¹é
åæ®å· |
| | | && a.FApproveStatus == 1) // åæ®å·²å®¡æ ¸ |
| | | .OrderBy((b, a, s) => s.ItemNo) |
| | | .Select((b, a, s) => new ItemDetailModel |
| | | { |
| | | ItemNo = s.ItemNo, |
| | | ItemName = s.ItemName, |
| | | ItemModel = s.ItemModel, |
| | | FQty = b.FQty, // ç³è¯·æ°é |
| | | SQty = b.SQty, // å·²æ«æ°é |
| | | RQty = b.RQty, // å·²æ«æ°é |
| | | // ä¿çå
¶ä»å¿
è¦å段... |
| | | Pid = b.Pid.ToString(), |
| | | FMaterialId = b.FMaterialId, |
| | | Id = b.Id.ToString() |
| | | }) |
| | | .ToList(); |
| | | var sql1 = string.Format(@"SELECT * FROM MES_DBCK WHERE FDocumentStatus = 'C' AND FBillNo = '{0}'", query.billNo); |
| | | |
| | | if(result.Count < 1) throw new Exception("è¯¥è°æ¨åä¸å卿已æ«å®ï¼è¯·éæ°æ«æ"); |
| | | var dbck = Db.Ado.SqlQuery<ItemDetailModel>(sql1); |
| | | |
| | | return result; |
| | | if (dbck.Count < 1) throw new Exception("è°æ¨åå·ä¸å卿æªå®¡æ ¸ï¼"); |
| | | |
| | | var sql2 = string.Format(@"SELECT c.item_no ItemNo,c.item_name ItemName,c.item_model ItemModel,b.FQty FQty,b.SQty SQty,b.FQty - b.SQty DSQty , |
| | | dbo.F_QX_GETRECODEPOTSE(B.FMATERIALID,'','','') as RecoKw |
| | | FROM MES_DBCK_DETAIL B |
| | | LEFT JOIN MES_DBCK A ON A.ID = B.pid |
| | | LEFT JOIN MES_ITEMS C ON B.FMATERIALID = C.item_id |
| | | LEFT JOIN WOMCAB D ON B.erpid = D.ERPID |
| | | WHERE A.FBillNo = '{0}' ORDER BY FSEQ", query.billNo); |
| | | |
| | | var womdabs = Db.Ado.SqlQuery<ItemDetailModel>(sql2); |
| | | |
| | | |
| | | var DS_list = womdabs.Where(s => s.DSQty > 0).ToList(); |
| | | |
| | | var YS_list = womdabs.Where(s => s.SQty > 0).ToList(); |
| | | |
| | | //var p_bill_no = query.billNo; |
| | | |
| | | //// æ ¹æ®SQLæ¥è¯¢æ¡ä»¶è·åå¾
å¤ççåºåºæç» |
| | | //// å
³èæ¥è¯¢TransferOutDetailãTransferOutåMesItemsä¸å¼ 表 |
| | | //// ç鿡件:æªå®ææ°é大äº0ä¸åæ®å·²å®¡æ ¸ |
| | | //var result = Db.Queryable<MesDbckDetail, MesDbck, MesItems>( |
| | | // (b, a, s) => new JoinQueryInfos( |
| | | // JoinType.Left, b.Pid == a.Id, |
| | | // JoinType.Left, b.FMaterialId == s.Id.ToString())) |
| | | // .Where((b, a, s) => |
| | | // !((b.FQty ?? 0) == (b.SQty ?? 0) && (b.FQty ?? 0) == (b.RQty ?? 0)) |
| | | // && a.FBillNo == p_bill_no // å¹é
åæ®å· |
| | | // && a.FApproveStatus == 1) // åæ®å·²å®¡æ ¸ |
| | | // .OrderBy((b, a, s) => s.ItemNo) |
| | | // .Select((b, a, s) => new ItemDetailModel |
| | | // { |
| | | // ItemNo = s.ItemNo, |
| | | // ItemName = s.ItemName, |
| | | // ItemModel = s.ItemModel, |
| | | // FQty = b.FQty, // ç³è¯·æ°é |
| | | // SQty = b.SQty, // å·²æ«æ°é |
| | | // RQty = b.RQty, // å·²æ«æ°é |
| | | // // ä¿çå
¶ä»å¿
è¦å段... |
| | | // Pid = b.Pid.ToString(), |
| | | // FMaterialId = b.FMaterialId, |
| | | // Id = b.Id.ToString() |
| | | // }) |
| | | // .ToList(); |
| | | |
| | | //if(result.Count < 1) throw new Exception("è¯¥è°æ¨åä¸å卿已æ«å®ï¼è¯·éæ°æ«æ"); |
| | | |
| | | var dto = new ProductionPickDto |
| | | { |
| | | items = DS_list, |
| | | Ysitems = YS_list |
| | | // yisao = mesInvItemOutCDetailsList |
| | | }; |
| | | |
| | | return dto; |
| | | } |
| | | |
| | | |
| | | /// <summary> |
| | | /// æ ¹æ®åæ®å·è·åå¾
å¤ççè°æ¨åºåºæç»å表 |
| | | /// </summary> |
| | | /// <param name="query">æ¥è¯¢åæ°,å
å«åæ®å·</param> |
| | | /// <returns>å¾
å¤ççè°æ¨åºåºæç»å表</returns> |
| | | public ProductionPickDto GetTransferInDetailListByBillNo( |
| | | WarehouseQuery query) |
| | | { |
| | | if (string.IsNullOrEmpty(query.billNo)) throw new Exception("è°æ¨åå·ä¸ºç©º"); |
| | | |
| | | var sql1 = string.Format(@"SELECT * FROM MES_DBCK WHERE FDocumentStatus = 'C' AND FBillNo = '{0}'", query.billNo); |
| | | |
| | | var dbck = Db.Ado.SqlQuery<ItemDetailModel>(sql1); |
| | | |
| | | if (dbck.Count < 1) throw new Exception("è°æ¨åå·ä¸å卿æªå®¡æ ¸ï¼"); |
| | | |
| | | var sql2 = string.Format(@"SELECT c.item_no ItemNo,c.item_name ItemName,c.item_model ItemModel,b.FQty FQty,b.SQty SQty,b.RQty RQty,b.SQty - b.RQty DSQty , |
| | | dbo.F_QX_GETRECODEPOTSE(B.FMATERIALID,'','','') as RecoKw |
| | | FROM MES_DBCK_DETAIL B |
| | | LEFT JOIN MES_DBCK A ON A.ID = B.pid |
| | | LEFT JOIN MES_ITEMS C ON B.FMATERIALID = C.item_id |
| | | LEFT JOIN WOMCAB D ON B.erpid = D.ERPID |
| | | WHERE A.FBillNo = '{0}' ORDER BY FSEQ", query.billNo); |
| | | |
| | | var womdabs = Db.Ado.SqlQuery<ItemDetailModel>(sql2); |
| | | |
| | | |
| | | var DS_list = womdabs.Where(s => s.DSQty > 0).ToList(); |
| | | |
| | | var YS_list = womdabs.Where(s => s.RQty > 0).ToList(); |
| | | |
| | | //var p_bill_no = query.billNo; |
| | | |
| | | //// æ ¹æ®SQLæ¥è¯¢æ¡ä»¶è·åå¾
å¤ççåºåºæç» |
| | | //// å
³èæ¥è¯¢TransferOutDetailãTransferOutåMesItemsä¸å¼ 表 |
| | | //// ç鿡件:æªå®ææ°é大äº0ä¸åæ®å·²å®¡æ ¸ |
| | | //var result = Db.Queryable<MesDbckDetail, MesDbck, MesItems>( |
| | | // (b, a, s) => new JoinQueryInfos( |
| | | // JoinType.Left, b.Pid == a.Id, |
| | | // JoinType.Left, b.FMaterialId == s.Id.ToString())) |
| | | // .Where((b, a, s) => |
| | | // !((b.FQty ?? 0) == (b.SQty ?? 0) && (b.FQty ?? 0) == (b.RQty ?? 0)) |
| | | // && a.FBillNo == p_bill_no // å¹é
åæ®å· |
| | | // && a.FApproveStatus == 1) // åæ®å·²å®¡æ ¸ |
| | | // .OrderBy((b, a, s) => s.ItemNo) |
| | | // .Select((b, a, s) => new ItemDetailModel |
| | | // { |
| | | // ItemNo = s.ItemNo, |
| | | // ItemName = s.ItemName, |
| | | // ItemModel = s.ItemModel, |
| | | // FQty = b.FQty, // ç³è¯·æ°é |
| | | // SQty = b.SQty, // å·²æ«æ°é |
| | | // RQty = b.RQty, // å·²æ«æ°é |
| | | // // ä¿çå
¶ä»å¿
è¦å段... |
| | | // Pid = b.Pid.ToString(), |
| | | // FMaterialId = b.FMaterialId, |
| | | // Id = b.Id.ToString() |
| | | // }) |
| | | // .ToList(); |
| | | |
| | | //if(result.Count < 1) throw new Exception("è¯¥è°æ¨åä¸å卿已æ«å®ï¼è¯·éæ°æ«æ"); |
| | | |
| | | var dto = new ProductionPickDto |
| | | { |
| | | items = DS_list, |
| | | Ysitems = YS_list |
| | | // yisao = mesInvItemOutCDetailsList |
| | | }; |
| | | |
| | | return dto; |
| | | } |
| | | |
| | | public List<ItemDetailModel> GetDBCKDetal( |
| | |
| | | /// </summary> |
| | | /// <param name="query">å
å«åæ®å·ãç¨æ·ååæ¡ç ä¿¡æ¯çæ¥è¯¢åæ°</param> |
| | | /// <returns>å¤çåç表ååå¾
å¤çæç»å表</returns> |
| | | public (WarehouseQuery form, List<ItemDetailModel> items) |
| | | public ProductionPickDto |
| | | ScanMoveBarcode(WarehouseQuery query) |
| | | { |
| | | var p_bill_no = query.billNo; |
| | |
| | | // æ¥è¯¢æ¡ç åºåä¿¡æ¯å¹¶éªè¯ |
| | | var stock = Db.Queryable<MesInvItemStocks>() |
| | | .Where(x => x.ItemBarcode == p_item_barcode |
| | | && x.Quantity > 0 |
| | | && !string.IsNullOrEmpty(x.DepotsCode)) |
| | | && x.Quantity > 0) |
| | | .First(); |
| | | if (stock == null) throw new Exception($"åºå䏿 æ¤æ¡ç ï¼è¯·æ ¸å¯¹ï¼{p_item_barcode}"); |
| | | |
| | |
| | | query.Fum = Convert.ToDecimal(splitNum); |
| | | |
| | | // è¿åæ´æ°åç表ååå¾
å¤çæç» |
| | | return (query, GetDBCKDetal(query)); |
| | | //return (query, GetDBCKDetal(query)); |
| | | var dto = new ProductionPickDto |
| | | { |
| | | itemNo = item.ItemNo, |
| | | barcodeNum = barcodeNum, |
| | | splitNum = splitNum, |
| | | barcode = query.barcode, |
| | | strMsg = _strMsg, |
| | | result = _intSum |
| | | }; |
| | | |
| | | return dto; |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | |
| | | ScanReceiveBarcode(WarehouseQuery query) |
| | | { |
| | | var p_bill_no = query.billNo; |
| | | var p_item_barcode = query.barcode; |
| | | |
| | | var barinfo = Db.Queryable<MesInvItemStocks>() |
| | | .Where(x => x.ItemBarcode == p_item_barcode) |
| | | .First(); |
| | | |
| | | |
| | | //// éªè¯åæ®å· |
| | | //if (string.IsNullOrEmpty(p_bill_no)) throw new Exception("请éååæ®å·ï¼"); |
| | | |
| | | //// æ¥è¯¢åºåºåå¹¶éªè¯ç¶æ |
| | | //var transferOut = Db.Queryable<MesDbck>() |
| | | // .Where(x => x.FBillNo == p_bill_no && x.FApproveStatus == 1) |
| | | // .First(); |
| | | //if (transferOut == null) throw new Exception("æªæ¾å°è°æ¨ç³è¯·åæè
è°æ¨ç³è¯·åæ²¡å®¡æ ¸"); |
| | | |
| | | // æ¥è¯¢æ¡ç åºåä¿¡æ¯å¹¶éªè¯ |
| | | var stock = Db.Queryable<MesDbckDetail>() |
| | | .Where(x => x.FMaterialId == barinfo.ItemId.ToString() |
| | | && x.FQty > 0 |
| | | && !string.IsNullOrEmpty(x.FStockInId) |
| | | && !string.IsNullOrEmpty(x.FOwnerInId)) |
| | | .First(); |
| | | if (stock == null) throw new Exception($"è°æ¨æç»ä¸ ãç©æãæ ãè°å
¥ä»åºãæãè°å
¥è´§ä¸»ãä¿¡æ¯ä¸åå¨ï¼è¯·æ ¸å¯¹ï¼{p_item_barcode}"); |
| | | |
| | | // æ¥è¯¢ç©æä¿¡æ¯ |
| | | var item = Db.Queryable<MesItems>() |
| | | .Where(x => x.Id.ToString() == stock.FMaterialId) |
| | | .First(); |
| | | if (item == null) throw new Exception("æªæ¾å°ç©æ"); |
| | | |
| | | var _strMsg = ""; |
| | | var _intSum = ""; |
| | | using (var conn = new SqlConnection(DbHelperSQL.strConn)) |
| | | { |
| | | using (var cmd = new SqlCommand("[prc_pda_DBRK]", conn)) |
| | | { |
| | | try |
| | | { |
| | | conn.Open(); |
| | | cmd.CommandType = CommandType.StoredProcedure; |
| | | SqlParameter[] parameters = |
| | | { |
| | | new("@outMsg", SqlDbType.NVarChar, 300), |
| | | new("@outSum", SqlDbType.NVarChar, 300), |
| | | new("@barcode_num", SqlDbType.NVarChar, 300), |
| | | new("@outBillNo", SqlDbType.NVarChar, 300), |
| | | new("@c_user", query.userName), |
| | | new("@p_bill_no", p_bill_no), |
| | | new("@p_item_barcode", p_item_barcode), |
| | | new("@p_depot_section_code", query.sectionCode), |
| | | }; |
| | | parameters[0].Direction = ParameterDirection.Output; |
| | | parameters[1].Direction = ParameterDirection.Output; |
| | | parameters[2].Direction = ParameterDirection.Output; |
| | | parameters[3].Direction = ParameterDirection.Output; |
| | | foreach (var parameter in parameters) |
| | | cmd.Parameters.Add(parameter); |
| | | cmd.ExecuteNonQuery(); |
| | | _strMsg = parameters[0].Value.ToString(); |
| | | _intSum = parameters[1].Value.ToString(); |
| | | |
| | | var barcodeNum = parameters[2].Value.ToString(); |
| | | var outBillNo = parameters[3].Value.ToString(); |
| | | |
| | | var result = Convert.ToInt32(_intSum); |
| | | if (result <= 0) throw new Exception(_strMsg); |
| | | |
| | | query.itemNo = item.ItemNo; |
| | | query.Num = Convert.ToDecimal(barcodeNum); |
| | | //query.Fum = Convert.ToDecimal(splitNum); |
| | | query.billNo = outBillNo; |
| | | |
| | | // è¿åæ´æ°åç表ååå¾
å¤çæç» |
| | | return (query, GetDBCKDetal(query)); |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | throw new Exception(ex.Message); |
| | | } |
| | | finally |
| | | { |
| | | conn.Close(); |
| | | } |
| | | } |
| | | } |
| | | } |
| | | |
| | | public ProductionPickDto ScanCodeCF(WarehouseQuery query) |
| | | { |
| | | var p_bill_no = query.daa001; |
| | | var p_item_barcode = query.barcode; |
| | | |
| | | var barinfo = Db.Queryable<MesInvItemStocks>() |
| | |
| | | |
| | | var _strMsg = ""; |
| | | var _intSum = ""; |
| | | var _cfBar = ""; |
| | | using (var conn = new SqlConnection(DbHelperSQL.strConn)) |
| | | { |
| | | using (var cmd = new SqlCommand("[prc_pda_DBRK]", conn)) |
| | | using (var cmd = new SqlCommand("[prc_pda_DBCK_CF]", conn)) |
| | | { |
| | | try |
| | | { |
| | |
| | | cmd.CommandType = CommandType.StoredProcedure; |
| | | SqlParameter[] parameters = |
| | | { |
| | | new("@outMsg", SqlDbType.NVarChar, 300), |
| | | new("@outMsg", SqlDbType.NVarChar, 2000), |
| | | new("@outSum", SqlDbType.NVarChar, 300), |
| | | new("@barcode_num", SqlDbType.NVarChar, 300), |
| | | new("@split_num", SqlDbType.NVarChar, 300), |
| | | new("@c_user", query.userName), |
| | | new("@p_bill_no", p_bill_no), |
| | | new("@p_item_barcode", p_item_barcode), |
| | | new("@p_depot_section_code", query.sectionCode), |
| | | new("@outCfBar", SqlDbType.NVarChar, 300), |
| | | new("@c_User", query.userName), |
| | | new("@p_biLL_no", query.daa001), |
| | | new("@p_item_barcode", query.barcode), |
| | | new("@num", query.Num) |
| | | }; |
| | | parameters[0].Direction = ParameterDirection.Output; |
| | | parameters[1].Direction = ParameterDirection.Output; |
| | | parameters[2].Direction = ParameterDirection.Output; |
| | | parameters[3].Direction = ParameterDirection.Output; |
| | | foreach (var parameter in parameters) |
| | | cmd.Parameters.Add(parameter); |
| | | cmd.ExecuteNonQuery(); |
| | | _strMsg = parameters[0].Value.ToString(); |
| | | _intSum = parameters[1].Value.ToString(); |
| | | _cfBar = parameters[2].Value.ToString(); |
| | | |
| | | var barcodeNum = parameters[2].Value.ToString(); |
| | | var splitNum = parameters[3].Value.ToString(); |
| | | |
| | | |
| | | var result = Convert.ToInt32(_intSum); |
| | | if (result <= 0) throw new Exception(_strMsg); |
| | | |
| | | query.itemNo = item.ItemNo; |
| | | query.Num = Convert.ToDecimal(barcodeNum); |
| | | query.Fum = Convert.ToDecimal(splitNum); |
| | | |
| | | // è¿åæ´æ°åç表ååå¾
å¤çæç» |
| | | return (query, GetDBCKDetal(query)); |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | throw new Exception(ex.Message); |
| | | } |
| | | finally |
| | | { |
| | | conn.Close(); |
| | | } |
| | | } |
| | | } |
| | | } |
| | | |
| | | //è°æ¨åºåºæå prc_pda_DBCK_CF |
| | | public string SplitBarcode(WarehouseQuery query) |
| | | { |
| | | var _strMsg = ""; |
| | | var _intSum = ""; |
| | | using (var conn = new SqlConnection(DbHelperSQL.strConn)) |
| | | { |
| | | using (var cmd = new SqlCommand("[prc_pda_DBRK]", conn)) |
| | | { |
| | | try |
| | | { |
| | | conn.Open(); |
| | | cmd.CommandType = CommandType.StoredProcedure; |
| | | SqlParameter[] parameters = |
| | | var dto = new ProductionPickDto |
| | | { |
| | | new("@outMsg", SqlDbType.NVarChar, 300), |
| | | new("@outSum", SqlDbType.NVarChar, 300), |
| | | new("@c_user", query.userName), |
| | | new("@p_bill_no", query.billNo), |
| | | new("@p_item_barcode", query.barcode), |
| | | new("@NUM", query.Fum), |
| | | daa001 = query.daa001, |
| | | barcode = query.barcode,//åæ¡ç |
| | | cfBarcode = _cfBar//æååæ¡ç |
| | | }; |
| | | |
| | | parameters[0].Direction = ParameterDirection.Output; |
| | | parameters[1].Direction = ParameterDirection.Output; |
| | | |
| | | foreach (var parameter in parameters) |
| | | cmd.Parameters.Add(parameter); |
| | | cmd.ExecuteNonQuery(); |
| | | _strMsg = parameters[0].Value.ToString(); |
| | | _intSum = parameters[1].Value.ToString(); |
| | | |
| | | var result = Convert.ToInt32(_intSum); |
| | | if (result <= 0) throw new Exception(_strMsg); |
| | | |
| | | return _strMsg; |
| | | |
| | | return dto; |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | |
| | | } |
| | | } |
| | | } |
| | | |
| | | } |
| ¶Ô±ÈÐÂÎļþ |
| | |
| | | using System.Data; |
| | | using System.Data.SqlClient; |
| | | using System.Text; |
| | | using Masuit.Tools; |
| | | using Microsoft.SqlServer.Server; |
| | | using NewPdaSqlServer.DB; |
| | | using NewPdaSqlServer.Dto.service; |
| | | using NewPdaSqlServer.entity; |
| | | using NewPdaSqlServer.entity.Base; |
| | | using SqlSugar; |
| | | |
| | | namespace NewPdaSqlServer.service.Wom; |
| | | |
| | | public class WomdaaManager : Repository<Womdaa> |
| | | { |
| | | //å½å类已ç»ç»§æ¿äº Repository å¢ãå ãæ¥ãæ¹çæ¹æ³ |
| | | //è¿éé¢åç代ç ä¸ä¼ç»è¦ç,妿è¦éæ°çæè¯·å é¤ WomdaaManager.cs |
| | | |
| | | //è·åå·¥åå· |
| | | public List<string> GetProductionPickDaa001(WarehouseQuery query) |
| | | { |
| | | var sql = |
| | | "SELECT DAA001 FROM WOMDAA A LEFT JOIN (SELECT COUNT(1) UN_NUM, PID FROM WOMDAB WHERE DAB006 > DAB007 GROUP BY DAB002) B ON A.GUID = B.daaGuid WHERE DAA001 = " + |
| | | query.daa001 + |
| | | " and DAA018 != 'å®å·¥' AND DAA022 = 1 AND UN_NUM > 0 AND ROWNUM <= 10 order by a.id desc"; |
| | | |
| | | return Db.Ado.SqlQuery<string>(sql); |
| | | } |
| | | |
| | | //æ ¹æ®å·¥åå·è¿å产ååå·åå¾
é¢ç©æ |
| | | public ProductionPickDto GetItemsByDaa001(WarehouseQuery query) |
| | | { |
| | | return getDaa001(query); |
| | | } |
| | | |
| | | public ProductionPickDto ScanCode(WarehouseQuery query) |
| | | { |
| | | var _strMsg = ""; |
| | | var _intSum = ""; |
| | | using (var conn = new SqlConnection(DbHelperSQL.strConn)) |
| | | { |
| | | if (query.userName.IsNullOrEmpty()) throw new Exception("ç¨æ·åä¸å
许为空"); |
| | | if (query.daa001.IsNullOrEmpty()) throw new Exception("颿åå·ä¸å
许为空"); |
| | | if (query.barcode.IsNullOrEmpty()) throw new Exception("æ¡ç ä¸å
许为空"); |
| | | |
| | | using (var cmd = new SqlCommand("[prc_pda_SCLL]", conn)) |
| | | { |
| | | try |
| | | { |
| | | conn.Open(); |
| | | cmd.CommandType = CommandType.StoredProcedure; |
| | | SqlParameter[] parameters = |
| | | { |
| | | new("@outMsg", SqlDbType.NVarChar, 300), |
| | | new("@outSum", SqlDbType.NVarChar, 300), |
| | | new("@barcode_num", SqlDbType.NVarChar, 300), |
| | | new("@split_num", SqlDbType.NVarChar, 300), |
| | | new("@c_User", query.userName), |
| | | new("@p_biLL_no", query.daa001), |
| | | new("@p_item_barcode", query.barcode) |
| | | }; |
| | | parameters[0].Direction = ParameterDirection.Output; |
| | | parameters[1].Direction = ParameterDirection.Output; |
| | | parameters[2].Direction = ParameterDirection.Output; |
| | | parameters[3].Direction = ParameterDirection.Output; |
| | | foreach (var parameter in parameters) |
| | | cmd.Parameters.Add(parameter); |
| | | cmd.ExecuteNonQuery(); |
| | | _strMsg = parameters[0].Value.ToString(); |
| | | _intSum = parameters[1].Value.ToString(); |
| | | |
| | | var barcodeNum = parameters[2].Value.ToString(); |
| | | var splitNum = parameters[3].Value.ToString(); |
| | | |
| | | var result = Convert.ToInt32(_intSum); |
| | | if (result <= 0) throw new Exception(_strMsg); |
| | | |
| | | var dto = new ProductionPickDto |
| | | { |
| | | daa001 = query.daa001, |
| | | barcodeNum = barcodeNum, |
| | | splitNum = splitNum, |
| | | barcode = query.barcode, |
| | | strMsg = _strMsg, |
| | | result = _intSum |
| | | }; |
| | | |
| | | return dto; |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | throw new Exception(ex.Message); |
| | | } |
| | | finally |
| | | { |
| | | conn.Close(); |
| | | } |
| | | } |
| | | } |
| | | } |
| | | |
| | | //prC_pda_SCLL_CF |
| | | public ProductionPickDto ScanCodeCF(WarehouseQuery query) |
| | | { |
| | | if (query.userName.IsNullOrEmpty()) throw new Exception("ç¨æ·åä¸å
许为空"); |
| | | if (query.daa001.IsNullOrEmpty()) throw new Exception("颿åå·ä¸å
许为空"); |
| | | if (query.barcode.IsNullOrEmpty()) throw new Exception("æ¡ç ä¸å
许为空"); |
| | | |
| | | if (query.Num is null or 0) throw new Exception("æ¡ç æåæ°ä¸å
许为空æè
为0"); |
| | | |
| | | var _strMsg = ""; |
| | | var _intSum = ""; |
| | | var _cfBar = "";//æååæ¡ç |
| | | using (var conn = new SqlConnection(DbHelperSQL.strConn)) |
| | | { |
| | | using (var cmd = new SqlCommand("[prc_pda_SCLL_CF]", conn)) |
| | | { |
| | | try |
| | | { |
| | | conn.Open(); |
| | | cmd.CommandType = CommandType.StoredProcedure; |
| | | SqlParameter[] parameters = |
| | | { |
| | | new("@outMsg", SqlDbType.NVarChar, 2000), |
| | | new("@outSum", SqlDbType.NVarChar, 300), |
| | | new("@outCfBar", SqlDbType.NVarChar, 300), |
| | | new("@c_User", query.userName), |
| | | new("@p_biLL_no", query.daa001), |
| | | new("@p_item_barcode", query.barcode), |
| | | new("@num", query.Num) |
| | | }; |
| | | parameters[0].Direction = ParameterDirection.Output; |
| | | parameters[1].Direction = ParameterDirection.Output; |
| | | parameters[2].Direction = ParameterDirection.Output; |
| | | foreach (var parameter in parameters) |
| | | cmd.Parameters.Add(parameter); |
| | | cmd.ExecuteNonQuery(); |
| | | _strMsg = parameters[0].Value.ToString(); |
| | | _intSum = parameters[1].Value.ToString(); |
| | | _cfBar = parameters[2].Value.ToString(); |
| | | |
| | | |
| | | var result = Convert.ToInt32(_intSum); |
| | | if (result <= 0) throw new Exception(_strMsg); |
| | | |
| | | var dto = new ProductionPickDto |
| | | { |
| | | daa001 = query.daa001, |
| | | barcode = query.barcode,//åæ¡ç |
| | | cfBarcode = _cfBar//æååæ¡ç |
| | | }; |
| | | |
| | | return dto; |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | throw new Exception(ex.Message); |
| | | } |
| | | finally |
| | | { |
| | | conn.Close(); |
| | | } |
| | | } |
| | | } |
| | | } |
| | | |
| | | private ProductionPickDto getDaa001(WarehouseQuery query) |
| | | { |
| | | if (string.IsNullOrEmpty(query.daa001)) throw new Exception("å·¥åå·ä¸ºç©º"); |
| | | |
| | | var womdaa = Db.Queryable<Womdaa, MesItems>((a, i) => |
| | | new JoinQueryInfos(JoinType.Left, |
| | | a.Daa002 == i.ItemId.ToString())) |
| | | .Where((a, i) => a.Daa001 == query.daa001 |
| | | && a.Fstatus == 1) |
| | | .Select((a, i) => new |
| | | { |
| | | a.Daa001, a.CaaGuid |
| | | }).First(); |
| | | |
| | | if (womdaa?.Daa001 == null) throw new Exception("å·¥åå·ä¸åå¨"); |
| | | |
| | | //var womdabs = Db.Queryable<Womdaa, Womdab, MesItems, Womcab>( |
| | | // (a, b, c, d) => |
| | | // new JoinQueryInfos( |
| | | // JoinType.Left, |
| | | // a.Guid == b.DaaGuid, |
| | | // JoinType.Inner, |
| | | // c.Id.ToString() == |
| | | // b.Dab003, |
| | | // JoinType.Inner, b.Erpid == d.Erpid |
| | | // )) |
| | | // .Where((a, b, c, d) => |
| | | // a.Daa001 == query.daa001 && d.Iss1ueType == "1") |
| | | // .Select((a, b, c, d) => new ItemDetailModel |
| | | // { |
| | | // ItemNo = c.ItemNo, |
| | | // ItemName = c.ItemName, |
| | | // ItemModel = c.ItemModel, |
| | | // FQty = b.Dab006, // ç³è¯·æ°é |
| | | // SQty = b.Dab007, // å·²æ«æ°é |
| | | // DSQty = b.Dab006 - b.Dab007, // å·²æ«æ°é |
| | | // }) |
| | | // .ToList(); |
| | | |
| | | var sql =string.Format(@"SELECT c.item_no ItemNo,c.item_name ItemName,c.item_model ItemModel,b.dab006 FQty,b.dab007 SQty,b.dab006 - b.dab007 DSQty , |
| | | dbo.F_QX_GETRECODEPOTSE(B.dab003,'','','') as RecoKw |
| | | FROM WOMDAB B |
| | | LEFT JOIN WOMDAA A ON A.guid = B.daaGuid |
| | | LEFT JOIN MES_ITEMS C ON B.dab003 = C.item_id |
| | | LEFT JOIN WOMCAB D ON B.erpid = D.ERPID |
| | | WHERE daa001 = '{0}' AND ISSUE_TYPE = 1 ORDER BY DAB002", query.daa001); |
| | | |
| | | var womdabs = Db.Ado.SqlQuery<ItemDetailModel>(sql); |
| | | |
| | | |
| | | var DS_list = womdabs.Where(s => s.DSQty > 0).ToList(); |
| | | |
| | | var YS_list = womdabs.Where(s => s.SQty > 0).ToList(); |
| | | |
| | | var mesInvItemOutCDetailsList = Db |
| | | .Queryable<MesInvItemOutCDetails, MesItems, MesDepots> |
| | | ((a, b, c) => |
| | | new JoinQueryInfos( |
| | | JoinType.Inner, a.ItemId == b.Id, |
| | | JoinType.Inner, c.DepotId == a.DepotId |
| | | )) |
| | | .Where((a, b, c) => a.WorkNo == query.daa001) |
| | | .Select((a, b, c) => new MesInvItemOutCDetails |
| | | { |
| | | ItemName = b.ItemName, |
| | | ItemNo = b.ItemNo, |
| | | ItemId = a.ItemId, |
| | | DepotId = a.DepotId, |
| | | WorkNo = a.WorkNo, |
| | | DepotName = c.DepotName, |
| | | Quantity = a.Quantity |
| | | }) |
| | | .ToList(); |
| | | |
| | | var womcaa = Db.Queryable<Womcaa>().Where(s => s.Guid == womdaa.CaaGuid) |
| | | .First(); |
| | | |
| | | if (womcaa == null) |
| | | { |
| | | throw new Exception("ç产任å¡åä¸åå¨"); |
| | | } |
| | | |
| | | var dto = new ProductionPickDto |
| | | { |
| | | daa001 = womdaa.Daa001, |
| | | PlanNo = womcaa.Caa020, |
| | | items = DS_list, |
| | | Ysitems = YS_list |
| | | // yisao = mesInvItemOutCDetailsList |
| | | }; |
| | | |
| | | return dto; |
| | | } |
| | | |
| | | /// <summary> |
| | | /// è·å工忡ç ä¿¡æ¯ |
| | | /// </summary> |
| | | /// <param name="query"></param> |
| | | /// <returns></returns> |
| | | public dynamic getZsBarInfo(dynamic query) |
| | | { |
| | | |
| | | var sql = string.Format(@"SELECT TOP 1 A.barCode AS zsBarcode, |
| | | D.name AS lineName, |
| | | D.line_no, |
| | | B.daa001, |
| | | C.item_no, |
| | | C.item_name, |
| | | C.item_model, |
| | | A.quantity as barQty, |
| | | B.daa008 as sumQty, |
| | | isnull((SELECT count(1) FROM WORK_COLLECT WHERE processNo = '{0}' AND ABOUT_GUID = A.ABOUT_GUID),0) AS finQty, |
| | | isnull((SELECT TOP 1 processNo FROM WORK_COLLECT WHERE WORK_COLLECT.barCode = '{1}' AND checkResult = 'â' ORDER BY WORK_COLLECT.createDate DESC ),'') AS lastGx |
| | | FROM WORK_TRAC_CODE A |
| | | LEFT JOIN WOMDAA B ON A.ABOUT_GUID = B.guid |
| | | LEFT JOIN MES_ITEMS C ON B.daa002 = C.item_id |
| | | LEFT JOIN MES_WORKSHOP_LINE D ON A.lineId = D.id |
| | | WHERE A.barCode = '{1}'", query.GX, query.Zsbarcode); |
| | | |
| | | var ZsBarInfo = Db.Ado.SqlQuery<dynamic>(sql); |
| | | |
| | | if (ZsBarInfo.Count < 1) |
| | | { |
| | | throw new Exception($"该追溯ç {query.Zsbarcode}ä¸åå¨ä¸åå¨"); |
| | | } |
| | | |
| | | return ZsBarInfo; |
| | | } |
| | | |
| | | //è·åç产 |
| | | public dynamic getTraceability(dynamic query) |
| | | { |
| | | var sql = string.Format(@"SELECT processNo, A.barCode, B.lineId, line_no, name AS lineName, checkResult, C.USER_NAME |
| | | FROM WORK_COLLECT A |
| | | LEFT JOIN WORK_TRAC_CODE B ON A.barCode = B.barCode |
| | | LEFT JOIN SYS_USER C ON C.ACCOUNT = A.createBy |
| | | LEFT JOIN MES_WORKSHOP_LINE D ON B.lineId = D.id |
| | | WHERE A.barCode = '{0}'", query.Zsbarcode); |
| | | |
| | | var Traceability = Db.Ado.SqlQuery<dynamic>(sql); |
| | | |
| | | return Traceability; |
| | | } |
| | | |
| | | public dynamic ProductBinding(dynamic query) |
| | | { |
| | | if (query == null) throw new ArgumentNullException(nameof(query), "åæ°å¯¹è±¡ä¸è½ä¸º null"); |
| | | |
| | | // 2. ä½¿ç¨ string.IsNullOrEmpty ç´æ¥å¤æåç¬¦ä¸²å±æ§ï¼é¿å
NullReferenceExceptionï¼ |
| | | if (string.IsNullOrEmpty(query.userName?.ToString())) |
| | | throw new ArgumentException("ç¨æ·åä¸å
许为空", nameof(query.userName)); |
| | | |
| | | if (string.IsNullOrEmpty(query.ZsBar?.ToString())) |
| | | throw new ArgumentException("追溯ç ä¸å
许为空", nameof(query.ZsBar)); |
| | | |
| | | if (string.IsNullOrEmpty(query.LsBar?.ToString())) |
| | | throw new ArgumentException("åçç ä¸å
许为空", nameof(query.LsBar)); |
| | | |
| | | var _strMsg = ""; |
| | | var _intSum = ""; |
| | | using (var conn = new SqlConnection(DbHelperSQL.strConn)) |
| | | { |
| | | using (var cmd = new SqlCommand("prc_pda_product_binding", conn)) |
| | | { |
| | | try |
| | | { |
| | | conn.Open(); |
| | | cmd.CommandType = CommandType.StoredProcedure; |
| | | SqlParameter[] parameters = |
| | | { |
| | | new("@pi_user", SqlDbType.NVarChar, 100) { Value = query.userName }, |
| | | new("@pi_trac_barcode", SqlDbType.NVarChar, 100) { Value = query.ZsBar }, |
| | | new("@pi_ls_barcode", SqlDbType.NVarChar, 100) { Value = query.LsBar }, |
| | | new("@po_outMsg", SqlDbType.NVarChar, 2000) { Direction = ParameterDirection.Output }, |
| | | new("@po_outStatus", SqlDbType.Int) { Direction = ParameterDirection.Output } |
| | | }; |
| | | |
| | | foreach (var parameter in parameters) |
| | | cmd.Parameters.Add(parameter); |
| | | |
| | | cmd.ExecuteNonQuery(); |
| | | |
| | | _strMsg = parameters[3].Value?.ToString() ?? ""; |
| | | _intSum = parameters[4].Value?.ToString() ?? "-1"; |
| | | |
| | | var result = Convert.ToInt32(_intSum); |
| | | if (result <= 0) throw new Exception(_strMsg); |
| | | |
| | | var dto = new |
| | | { |
| | | message = _strMsg, |
| | | status = result, |
| | | tracBarcode = query.ZsBar |
| | | }; |
| | | |
| | | return dto; |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | throw new Exception(ex.Message); |
| | | } |
| | | finally |
| | | { |
| | | conn.Close(); |
| | | } |
| | | } |
| | | } |
| | | } |
| | | |
| | | |
| | | /// <summary> |
| | | /// è·å塿¿ä¿¡æ¯ |
| | | /// </summary> |
| | | /// <param name="query"></param> |
| | | /// <returns></returns> |
| | | public dynamic getKbBarInfo(dynamic query) |
| | | { |
| | | if (string.IsNullOrEmpty(query.Kbbarcode?.ToString())) |
| | | throw new ArgumentException("塿¿æ¡ç ä¸å
许为空", nameof(query.userName)); |
| | | |
| | | var sql = string.Format(@"SELECT OLDQTY, |
| | | ISNULL((SELECT COUNT(1) FROM MES_INV_ITEM_BARCODES_TBMX WHERE ABOUT_TB_BARCODE = '{0}'), 0) AS YSum, |
| | | DAA001 |
| | | FROM MES_INV_ITEM_BARCODES A LEFT JOIN WOMDAA B ON A.ABOUT_GUID = B.guid |
| | | WHERE ITEM_BARCODE = '{0}' ", query.Kbbarcode); |
| | | |
| | | var ZsBarInfo = Db.Ado.SqlQuery<dynamic>(sql); |
| | | |
| | | if (ZsBarInfo.Count < 1) |
| | | { |
| | | throw new Exception($"è¯¥å¡æ¿ç {query.Zsbarcode}ä¸åå¨ï¼"); |
| | | } |
| | | |
| | | return ZsBarInfo; |
| | | } |
| | | |
| | | /// <summary> |
| | | /// è·å塿¿æç»ä¿¡æ¯ |
| | | /// </summary> |
| | | /// <param name="query"></param> |
| | | /// <returns></returns> |
| | | public dynamic getKbBarMxInfo(dynamic query) |
| | | { |
| | | |
| | | var sql = string.Format(@"SELECT ITEM_BARCODE, QUANTITY,item_no,item_name,item_model,weight |
| | | FROM MES_INV_ITEM_BARCODES_TBMX A |
| | | LEFT JOIN WOMDAA B ON B.daa001 = A.DAA_001 |
| | | LEFT JOIN MES_ITEMS C ON C.item_id = B.daa002 |
| | | WHERE ABOUT_TB_BARCODE = '{0}' ", query.Kbbarcode); |
| | | |
| | | var ZsBarInfo = Db.Ado.SqlQuery<dynamic>(sql); |
| | | |
| | | |
| | | return ZsBarInfo; |
| | | } |
| | | |
| | | /// <summary> |
| | | /// è·åç®±æç»ä¿¡æ¯ |
| | | /// </summary> |
| | | /// <param name="query"></param> |
| | | /// <returns></returns> |
| | | public dynamic getXBarInfo(dynamic query) |
| | | { |
| | | //var sql1 = string.Format(@"SELECT 1 FROM MES_INV_ITEM_BARCODES_TBMX WHERE ITEM_BARCODE = '{0}' ", query.Xbarcode); |
| | | |
| | | //var IS_CZ = Db.Ado.SqlQuery<dynamic>(sql1); |
| | | |
| | | //if (IS_CZ.Count < 1) |
| | | //{ |
| | | // throw new Exception($"该箱æ¡ç [{query.Xbarcode}]ä¸åå¨ï¼"); |
| | | //} |
| | | |
| | | |
| | | // æ ¡éªåå¨è¿ç¨ |
| | | if (string.IsNullOrEmpty(query.KbBar?.ToString())) |
| | | throw new ArgumentException("塿¿æ¡ç ä¸å
许为空", nameof(query.KbBar)); |
| | | // æ ¡éªåå¨è¿ç¨ |
| | | if (string.IsNullOrEmpty(query.Xbarcode?.ToString())) |
| | | throw new ArgumentException("ç®±æ¡ç ä¸å
许为空", nameof(query.Xbarcode)); |
| | | |
| | | var successRecords = new List<dynamic>(); |
| | | using (var conn = new SqlConnection(DbHelperSQL.strConn)) |
| | | { |
| | | conn.Open(); |
| | | using (var transaction = conn.BeginTransaction()) // å¼å¯äºå¡ |
| | | { |
| | | try |
| | | { |
| | | |
| | | using (var cmd = new SqlCommand("prc_pda_Xbar_binding_JY", conn, transaction)) |
| | | { |
| | | cmd.CommandType = CommandType.StoredProcedure; |
| | | SqlParameter[] parameters = |
| | | { |
| | | new("@pi_user", SqlDbType.NVarChar, 100) { Value = query.userName }, |
| | | new("@pi_kb_barcode", SqlDbType.NVarChar, 100) { Value = query.KbBar }, |
| | | new("@pi_ls_barcode", SqlDbType.NVarChar, 100) { Value = query.Xbarcode }, |
| | | new("@po_outMsg", SqlDbType.NVarChar, 2000) { Direction = ParameterDirection.Output }, |
| | | new("@po_outStatus", SqlDbType.Int) { Direction = ParameterDirection.Output } |
| | | }; |
| | | |
| | | foreach (var parameter in parameters) |
| | | cmd.Parameters.Add(parameter); |
| | | |
| | | cmd.ExecuteNonQuery(); |
| | | |
| | | var _strMsg = parameters[3].Value?.ToString() ?? ""; |
| | | var _intSum = parameters[4].Value?.ToString() ?? "-1"; |
| | | |
| | | var result = Convert.ToInt32(_intSum); |
| | | if (result <= 0) |
| | | { |
| | | //transaction.Rollback(); |
| | | throw new Exception(_strMsg); |
| | | //return new { |
| | | // status = result, |
| | | // message = $"æä½åæ»ï¼{_strMsg}", |
| | | // failedBarcode = xBar.iteM_BARCODE, |
| | | // successCount = successRecords.Count |
| | | //}; |
| | | } |
| | | |
| | | } |
| | | |
| | | transaction.Commit(); // å
¨é¨æåæäº¤äºå¡ |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | transaction.Rollback(); |
| | | throw new Exception($"å¼å¸¸ä¿¡æ¯ ï¼{ex.Message}"); |
| | | } |
| | | finally |
| | | { |
| | | conn.Close(); |
| | | } |
| | | } |
| | | } |
| | | |
| | | var sql2 = string.Format(@"SELECT ITEM_BARCODE, QUANTITY,item_no,item_name,item_model,'0' as is_hedui |
| | | FROM MES_INV_ITEM_BARCODES_TBMX A |
| | | LEFT JOIN WOMDAA B ON B.daa001 = A.DAA_001 |
| | | LEFT JOIN MES_ITEMS C ON C.item_id = B.daa002 |
| | | WHERE DAA_001 = '{0}' |
| | | AND ITEM_BARCODE = '{1}' |
| | | AND ISNULL(ABOUT_TB_BARCODE, '') = '' ", query.DAA001, query.Xbarcode); |
| | | |
| | | var ZsBarInfo = Db.Ado.SqlQuery<dynamic>(sql2); |
| | | |
| | | if (ZsBarInfo.Count < 1) |
| | | { |
| | | throw new Exception($"该箱æ¡ç [{query.Xbarcode}]对åºå·¥å䏿ç å·¥å[{query.DAA001}]ä¸å¹é
æå·²ç»å®æç ï¼"); |
| | | } |
| | | |
| | | return ZsBarInfo; |
| | | } |
| | | |
| | | public dynamic submitAllChecked(dynamic query) |
| | | { |
| | | if (query == null) throw new ArgumentNullException(nameof(query), "åæ°å¯¹è±¡ä¸è½ä¸º null"); |
| | | |
| | | // åæ°æ ¡éªå¼ºå |
| | | if (string.IsNullOrEmpty(query.userName?.ToString())) |
| | | throw new ArgumentException("ç¨æ·åä¸å
许为空", nameof(query.userName)); |
| | | |
| | | if (string.IsNullOrEmpty(query.KbBar?.ToString())) |
| | | throw new ArgumentException("塿¿æ¡ç ä¸å
许为空", nameof(query.KbBar)); |
| | | |
| | | if (query.XbarInfo == null || !((IEnumerable<dynamic>)query.XbarInfo).GetEnumerator().MoveNext()) |
| | | throw new ArgumentException("ç®±ç å表ä¸è½ä¸ºç©º", nameof(query.XbarInfo)); |
| | | |
| | | var successRecords = new List<dynamic>(); |
| | | using (var conn = new SqlConnection(DbHelperSQL.strConn)) |
| | | { |
| | | conn.Open(); |
| | | using (var transaction = conn.BeginTransaction()) // å¼å¯äºå¡ |
| | | { |
| | | try |
| | | { |
| | | foreach (var xBar in query.XbarInfo) // éåç®±ç éå |
| | | { |
| | | using (var cmd = new SqlCommand("prc_pda_Xbar_binding", conn, transaction)) |
| | | { |
| | | cmd.CommandType = CommandType.StoredProcedure; |
| | | SqlParameter[] parameters = |
| | | { |
| | | new("@pi_user", SqlDbType.NVarChar, 100) { Value = query.userName }, |
| | | new("@pi_kb_barcode", SqlDbType.NVarChar, 100) { Value = query.KbBar }, |
| | | new("@pi_ls_barcode", SqlDbType.NVarChar, 100) { Value = xBar.iteM_BARCODE }, |
| | | new("@po_outMsg", SqlDbType.NVarChar, 2000) { Direction = ParameterDirection.Output }, |
| | | new("@po_outStatus", SqlDbType.Int) { Direction = ParameterDirection.Output } |
| | | }; |
| | | |
| | | foreach (var parameter in parameters) |
| | | cmd.Parameters.Add(parameter); |
| | | |
| | | cmd.ExecuteNonQuery(); |
| | | |
| | | var _strMsg = parameters[3].Value?.ToString() ?? ""; |
| | | var _intSum = parameters[4].Value?.ToString() ?? "-1"; |
| | | |
| | | var result = Convert.ToInt32(_intSum); |
| | | if (result <= 0) |
| | | { |
| | | //transaction.Rollback(); |
| | | throw new Exception(_strMsg); |
| | | //return new { |
| | | // status = result, |
| | | // message = $"æä½åæ»ï¼{_strMsg}", |
| | | // failedBarcode = xBar.iteM_BARCODE, |
| | | // successCount = successRecords.Count |
| | | //}; |
| | | } |
| | | |
| | | successRecords.Add(new { |
| | | kbBarcode = query.KbBar, |
| | | xBarcode = xBar.iteM_BARCODE, |
| | | processTime = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss") |
| | | }); |
| | | } |
| | | } |
| | | transaction.Commit(); // å
¨é¨æåæäº¤äºå¡ |
| | | return new { |
| | | status = 1, |
| | | message = "æ¹éç»å®æå", |
| | | successCount = successRecords.Count, |
| | | details = successRecords |
| | | }; |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | transaction.Rollback(); |
| | | throw new Exception($"å¼å¸¸ä¿¡æ¯ ï¼{ex.Message}"); |
| | | } |
| | | finally |
| | | { |
| | | conn.Close(); |
| | | } |
| | | } |
| | | } |
| | | } |
| | | |
| | | public dynamic SubmitKbInspection(dynamic query) |
| | | { |
| | | if (query == null) throw new ArgumentNullException(nameof(query), "åæ°å¯¹è±¡ä¸è½ä¸º null"); |
| | | |
| | | // åæ°æ ¡éª |
| | | if (string.IsNullOrEmpty(query.userAccount?.ToString())) |
| | | throw new ArgumentException("ç¨æ·åä¸å
许为空", nameof(query.userAccount)); |
| | | |
| | | if (string.IsNullOrEmpty(query.KbBar?.ToString())) |
| | | throw new ArgumentException("塿¿æ¡ç ä¸å
许为空", nameof(query.KbBar)); |
| | | |
| | | var _strMsg = ""; |
| | | var _status = -1; |
| | | using (var conn = new SqlConnection(DbHelperSQL.strConn)) |
| | | { |
| | | using (var cmd = new SqlCommand("prc_pda_KBbar_submitInspection", conn)) |
| | | { |
| | | try |
| | | { |
| | | conn.Open(); |
| | | cmd.CommandType = CommandType.StoredProcedure; |
| | | SqlParameter[] parameters = |
| | | { |
| | | new("@pi_user", SqlDbType.NVarChar, 100) { Value = query.userAccount }, |
| | | new("@pi_kb_barcode", SqlDbType.NVarChar, 100) { Value = query.KbBar }, |
| | | new("@po_outMsg", SqlDbType.NVarChar, 2000) { Direction = ParameterDirection.Output }, |
| | | new("@po_outStatus", SqlDbType.Int) { Direction = ParameterDirection.Output } |
| | | }; |
| | | |
| | | foreach (var parameter in parameters) |
| | | cmd.Parameters.Add(parameter); |
| | | |
| | | cmd.ExecuteNonQuery(); |
| | | |
| | | _strMsg = parameters[2].Value?.ToString() ?? ""; |
| | | _status = Convert.ToInt32(parameters[3].Value ?? -1); |
| | | |
| | | if (_status <= 0) throw new Exception(_strMsg); |
| | | |
| | | return new { |
| | | message = _strMsg, |
| | | status = _status, |
| | | kbBarcode = query.KbBar |
| | | }; |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | throw new Exception($"塿¿éæ£å¤±è´¥ï¼{ex.Message}"); |
| | | } |
| | | finally |
| | | { |
| | | conn.Close(); |
| | | } |
| | | } |
| | | } |
| | | } |
| | | |
| | | |
| | | |
| | | //æ ¹æ®å·¥åå·è¿å产ååå·åå¾
é¢ç©æ |
| | | public XcslResultDto GetItemsXcsl(WarehouseQuery query) |
| | | { |
| | | if (string.IsNullOrEmpty(query.daa001)) throw new Exception("å·¥åå·ä¸ºç©º"); |
| | | |
| | | var womdaa = Db.Queryable<Womdaa, MesItems>((a, i) => |
| | | new JoinQueryInfos(JoinType.Left, |
| | | a.Daa002 == i.ItemId.ToString())) |
| | | .Where((a, i) => a.Daa001 == query.daa001 |
| | | && a.Fstatus == 1) |
| | | .Select((a, i) => new |
| | | { |
| | | a.Daa001, |
| | | a.CaaGuid, |
| | | a.Daa008, |
| | | a.Daa021 |
| | | }).First(); |
| | | |
| | | if (womdaa?.Daa001 == null) throw new Exception("å·¥åå·ä¸åå¨"); |
| | | |
| | | // 使ç¨åæ°åæ¥è¯¢é²æ¢SQL注å
¥ |
| | | var sqlParams = new List<SugarParameter> { new("@daa001", query.daa001) }; |
| | | |
| | | var sql1 = @"SELECT A.item_out_no, |
| | | SUM(B.QUANTITY) AS BL_Num, |
| | | ISNULL(Sub.JS_Sum, 0) AS JS_Num, -- 使ç¨LEFT JOINåæ¥è¯¢çç»æ |
| | | C.item_no, |
| | | C.item_name, |
| | | C.item_model, |
| | | D.USER_NAME |
| | | FROM MES_INV_ITEM_OUTS A |
| | | LEFT JOIN MES_INV_ITEM_OUT_C_DETAILS B ON A.GUID = B.ITEM_OUT_ID |
| | | LEFT JOIN MES_ITEMS C ON B.ITEM_ID = C.item_id |
| | | LEFT JOIN SYS_USER D ON A.create_by = D.ACCOUNT |
| | | -- æ°å¢LEFT JOINèååæ¥è¯¢ |
| | | LEFT JOIN (SELECT B1.ITEM_ID, |
| | | SUM(B1.QUANTITY) AS JS_Sum |
| | | FROM MES_INV_ITEM_OUTS A1 |
| | | LEFT JOIN MES_INV_ITEM_OUT_C_DETAILS B1 ON A1.GUID = B1.ITEM_OUT_ID |
| | | WHERE A1.out_type = 'çäº§é¢æ' |
| | | AND A1.task_no = @daa001 |
| | | AND ISNULL(B1.IS_XCSL, '0') = 1 |
| | | GROUP BY B1.ITEM_ID -- æITEM_IDæåèå |
| | | ) AS Sub ON Sub.ITEM_ID = C.item_id |
| | | WHERE A.out_type = 'çäº§é¢æ' |
| | | AND A.task_no = @daa001 |
| | | GROUP BY A.item_out_no, |
| | | C.item_no, |
| | | C.item_name, |
| | | C.item_model, |
| | | D.USER_NAME, |
| | | C.item_id, |
| | | ISNULL(Sub.JS_Sum, 0);"; |
| | | |
| | | var XcslItem = Db.Ado.SqlQuery<dynamic>(sql1, sqlParams); |
| | | |
| | | var sql2 = @"SELECT B.ITEM_BARCODE ,B.QUANTITY,C.item_no,C.item_name,D.USER_NAME,A.create_date |
| | | FROM MES_INV_ITEM_OUTS A |
| | | LEFT JOIN MES_INV_ITEM_OUT_C_DETAILS B ON A.GUID = B.ITEM_OUT_ID |
| | | LEFT JOIN MES_ITEMS C ON B.ITEM_ID = C.item_id |
| | | LEFT JOIN SYS_USER D ON A.create_by = D.ACCOUNT |
| | | WHERE out_type = 'çäº§é¢æ' |
| | | AND A.task_no = @daa001 |
| | | AND ISNULL(IS_XCSL,'0') = 0"; |
| | | |
| | | var XcslWjsBar = Db.Ado.SqlQuery<dynamic>(sql2, sqlParams); |
| | | |
| | | var sql3 = @"SELECT B.ITEM_BARCODE ,B.QUANTITY,C.item_no,C.item_name,D.USER_NAME,B.XCSL_CREATE_DATE |
| | | FROM MES_INV_ITEM_OUTS A |
| | | LEFT JOIN MES_INV_ITEM_OUT_C_DETAILS B ON A.GUID = B.ITEM_OUT_ID |
| | | LEFT JOIN MES_ITEMS C ON B.ITEM_ID = C.item_id |
| | | LEFT JOIN SYS_USER D ON B.XCSL_CREATE_BY = D.ACCOUNT |
| | | WHERE out_type = 'çäº§é¢æ' |
| | | AND A.task_no = @daa001 |
| | | AND ISNULL(IS_XCSL,'0') = 1"; |
| | | |
| | | var XcslYjsBar = Db.Ado.SqlQuery<dynamic>(sql3, sqlParams); |
| | | |
| | | |
| | | var dto = new XcslResultDto |
| | | { |
| | | GD_Num = womdaa.Daa008, |
| | | workNo = womdaa.Daa021, |
| | | XcslItemList = XcslItem, |
| | | XcslWjsBarList = XcslWjsBar, |
| | | XcslYjsBarList = XcslYjsBar |
| | | |
| | | }; |
| | | |
| | | return dto; |
| | | } |
| | | |
| | | // ç°åºæ¶æå±ç¤ºå表 |
| | | public class XcslResultDto |
| | | { |
| | | public int? GD_Num { get; set; } |
| | | public string? workNo { get; set; } |
| | | public List<dynamic> XcslItemList { get; set; } |
| | | public List<dynamic> XcslWjsBarList { get; set; } |
| | | public List<dynamic> XcslYjsBarList { get; set; } |
| | | } |
| | | |
| | | |
| | | public dynamic ScanXcsl(dynamic query) |
| | | { |
| | | if (query == null) throw new ArgumentNullException(nameof(query), "åæ°å¯¹è±¡ä¸è½ä¸º null"); |
| | | |
| | | // åæ°æ ¡éªï¼æ ¹æ®åå¨è¿ç¨æ°å¢åæ°ï¼ |
| | | if (string.IsNullOrEmpty(query.userAccount?.ToString())) |
| | | throw new ArgumentException("ç¨æ·åä¸å
许为空", nameof(query.userAccount)); |
| | | |
| | | if (string.IsNullOrEmpty(query.Bar?.ToString())) |
| | | throw new ArgumentException("ç©ææ¡ç ä¸å
许为空", nameof(query.Bar)); |
| | | |
| | | if (string.IsNullOrEmpty(query.DAA001?.ToString())) |
| | | throw new ArgumentException("å·¥ååå·ä¸å
许为空", nameof(query.DAA001)); |
| | | |
| | | var _strMsg = ""; |
| | | var _status = -1; |
| | | using (var conn = new SqlConnection(DbHelperSQL.strConn)) |
| | | { |
| | | using (var cmd = new SqlCommand("prc_pda_ScanXcsl", conn)) |
| | | { |
| | | try |
| | | { |
| | | conn.Open(); |
| | | cmd.CommandType = CommandType.StoredProcedure; |
| | | // æ ¹æ®åå¨è¿ç¨è°æ´åæ°é¡ºåºåå½å |
| | | SqlParameter[] parameters = |
| | | { |
| | | new("@pi_user", SqlDbType.NVarChar, 100) { Value = query.userAccount }, |
| | | new("@pi_barcode", SqlDbType.NVarChar, 100) { Value = query.Bar }, |
| | | new("@pi_daa001", SqlDbType.NVarChar, 100) { Value = query.DAA001 }, |
| | | new("@po_outMsg", SqlDbType.NVarChar, 2000) { Direction = ParameterDirection.Output }, |
| | | new("@po_outStatus", SqlDbType.Int) { Direction = ParameterDirection.Output } |
| | | }; |
| | | |
| | | foreach (var parameter in parameters) |
| | | cmd.Parameters.Add(parameter); |
| | | |
| | | cmd.ExecuteNonQuery(); |
| | | |
| | | _strMsg = parameters[3].Value?.ToString() ?? ""; |
| | | _status = Convert.ToInt32(parameters[4].Value ?? -1); |
| | | |
| | | if (_status <= 0) throw new Exception(_strMsg); |
| | | |
| | | return new |
| | | { |
| | | message = _strMsg, |
| | | status = _status, |
| | | daa001 = query.DAA001, |
| | | barCode = query.Bar |
| | | }; |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | throw new Exception($"äº§çº¿æ¶æå¤±è´¥ï¼{ex.Message}"); |
| | | } |
| | | finally |
| | | { |
| | | conn.Close(); |
| | | } |
| | | } |
| | | } |
| | | } |
| | | |
| | | |
| | | public dynamic GetWeightByXt(dynamic query) |
| | | { |
| | | if (query == null) throw new ArgumentNullException(nameof(query), "åæ°å¯¹è±¡ä¸è½ä¸ºnull"); |
| | | |
| | | // åæ°æ ¡éª |
| | | if (string.IsNullOrEmpty(query.userName?.ToString())) |
| | | throw new ArgumentException("ç¨æ·åä¸å
许为空", nameof(query.userName)); |
| | | |
| | | if (string.IsNullOrEmpty(query.LsBar?.ToString())) |
| | | throw new ArgumentException("塿¿æ¡ç ä¸å
许为空", nameof(query.LsBar)); |
| | | |
| | | var _strMsg = ""; |
| | | var _status = -1; |
| | | var _weight = "0"; |
| | | |
| | | using (var conn = new SqlConnection(DbHelperSQL.strConn)) |
| | | { |
| | | using (var cmd = new SqlCommand("prc_pda_Xbar_chenzhong", conn)) |
| | | { |
| | | try |
| | | { |
| | | conn.Open(); |
| | | cmd.CommandType = CommandType.StoredProcedure; |
| | | |
| | | SqlParameter[] parameters = |
| | | { |
| | | new("@pi_user", SqlDbType.NVarChar, 100) { Value = query.userName }, |
| | | new("@pi_ls_barcode", SqlDbType.NVarChar, 100) { Value = query.LsBar }, |
| | | new("@po_outMsg", SqlDbType.NVarChar, 2000) { Direction = ParameterDirection.Output }, |
| | | new("@po_outStatus", SqlDbType.Int) { Direction = ParameterDirection.Output }, |
| | | new("@po_outWeight", SqlDbType.NVarChar, 100) { Direction = ParameterDirection.Output } |
| | | }; |
| | | |
| | | cmd.Parameters.AddRange(parameters); |
| | | cmd.ExecuteNonQuery(); |
| | | |
| | | _strMsg = parameters[2].Value?.ToString() ?? ""; |
| | | _status = Convert.ToInt32(parameters[3].Value ?? -1); |
| | | _weight = parameters[4].Value?.ToString() ?? "0"; |
| | | |
| | | if (_status <= 0) throw new Exception(_strMsg); |
| | | |
| | | return new |
| | | { |
| | | message = _strMsg, |
| | | status = _status, |
| | | weight = _weight, |
| | | barCode = query.Bar |
| | | }; |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | throw new Exception($"产åç§°é失败ï¼{ex.Message}"); |
| | | } |
| | | finally |
| | | { |
| | | conn.Close(); |
| | | } |
| | | } |
| | | } |
| | | } |
| | | |
| | | public dynamic GetXcslDaa(dynamic unity) |
| | | { |
| | | |
| | | var sqlParams = new List<SugarParameter> { }; |
| | | |
| | | var sql2 = new StringBuilder(@" |
| | | SELECT '['+DAA001+']['+DAA021+']' AS daaInfo,DAA001,DAA021 |
| | | FROM WOMDAA |
| | | WHERE daa018 <>'W:å®å·¥'"); |
| | | |
| | | if (!string.IsNullOrWhiteSpace(unity.selectKey?.ToString())) |
| | | { |
| | | sqlParams.Add(new("@selectKey", unity.selectKey)); |
| | | sql2.Append(@" |
| | | AND (DAA001 LIKE '%' + @selectKey + '%' |
| | | OR DAA021 LIKE '%' + @selectKey + '%')"); |
| | | } |
| | | |
| | | var XcslItem = Db.Ado.SqlQuery<dynamic>(sql2.ToString(), sqlParams); |
| | | |
| | | if (XcslItem == null) |
| | | { |
| | | throw new Exception("该æ¡ä»¶ä¸æ 对åºå·¥åä¿¡æ¯ï¼è¯·éæ°è¾å
¥ï¼"); |
| | | } |
| | | |
| | | return XcslItem; |
| | | } |
| | | |
| | | |
| | | public XcslResultDto GetItemsXctl(WarehouseQuery query) |
| | | { |
| | | if (string.IsNullOrEmpty(query.daa001)) throw new Exception("å·¥åå·ä¸ºç©º"); |
| | | |
| | | var womdaa = Db.Queryable<Womdaa, MesItems>((a, i) => |
| | | new JoinQueryInfos(JoinType.Left, |
| | | a.Daa002 == i.ItemId.ToString())) |
| | | .Where((a, i) => a.Daa001 == query.daa001 |
| | | && a.Fstatus == 1) |
| | | .Select((a, i) => new |
| | | { |
| | | a.Daa001, |
| | | a.CaaGuid, |
| | | a.Daa008, |
| | | a.Daa021 |
| | | }).First(); |
| | | |
| | | if (womdaa?.Daa001 == null) throw new Exception("å·¥åå·ä¸åå¨"); |
| | | |
| | | // 使ç¨åæ°åæ¥è¯¢é²æ¢SQL注å
¥ |
| | | var sqlParams = new List<SugarParameter> { new("@daa001", query.daa001) }; |
| | | |
| | | var sql1 = @"SELECT A.item_out_no, |
| | | SUM(B.QUANTITY) AS BL_Num, |
| | | ISNULL(SL_SUM.JS_Sum, 0) AS JS_Num, |
| | | ISNULL(TL_SUM.JS_Sum, 0) AS TR_Num, |
| | | C.item_no, |
| | | C.item_name, |
| | | C.item_model |
| | | FROM MES_INV_ITEM_OUTS A |
| | | LEFT JOIN MES_INV_ITEM_OUT_C_DETAILS B ON A.GUID = B.ITEM_OUT_ID |
| | | LEFT JOIN MES_ITEMS C ON B.ITEM_ID = C.item_id |
| | | LEFT JOIN SYS_USER D ON A.create_by = D.ACCOUNT |
| | | LEFT JOIN (SELECT B1.ITEM_ID, |
| | | SUM(B1.QUANTITY) AS JS_Sum |
| | | FROM MES_INV_ITEM_OUTS A1 |
| | | LEFT JOIN MES_INV_ITEM_OUT_C_DETAILS B1 ON A1.GUID = B1.ITEM_OUT_ID |
| | | WHERE A1.out_type = 'çäº§é¢æ' |
| | | AND A1.task_no = @daa001 |
| | | AND ISNULL(B1.IS_XCSL, '0') = 1 |
| | | GROUP BY B1.ITEM_ID |
| | | ) AS SL_SUM ON SL_SUM.ITEM_ID = C.item_id |
| | | LEFT JOIN (SELECT B1.ITEM_ID, |
| | | SUM(B1.QUANTITY) AS JS_Sum |
| | | FROM MES_INV_ITEM_OUTS A1 |
| | | LEFT JOIN MES_INV_ITEM_OUT_C_DETAILS B1 ON A1.GUID = B1.ITEM_OUT_ID |
| | | WHERE A1.out_type = 'çäº§é¢æ' |
| | | AND A1.task_no = @daa001 |
| | | AND ISNULL(B1.IS_CXTR, '0') = 1 |
| | | GROUP BY B1.ITEM_ID |
| | | ) AS TL_SUM ON TL_SUM.ITEM_ID = C.item_id |
| | | WHERE A.out_type = 'çäº§é¢æ' |
| | | AND A.task_no = @daa001 |
| | | GROUP BY A.item_out_no, |
| | | C.item_no, |
| | | C.item_name, |
| | | C.item_model, |
| | | D.USER_NAME, |
| | | C.item_id, |
| | | ISNULL(SL_SUM.JS_Sum, 0), |
| | | ISNULL(TL_SUM.JS_Sum, 0);"; |
| | | |
| | | var XcslItem = Db.Ado.SqlQuery<dynamic>(sql1, sqlParams); |
| | | |
| | | var sql2 = @"SELECT B.ITEM_BARCODE ,B.QUANTITY,C.item_no,C.item_name,D.USER_NAME,A.create_date |
| | | FROM MES_INV_ITEM_OUTS A |
| | | LEFT JOIN MES_INV_ITEM_OUT_C_DETAILS B ON A.GUID = B.ITEM_OUT_ID |
| | | LEFT JOIN MES_ITEMS C ON B.ITEM_ID = C.item_id |
| | | LEFT JOIN SYS_USER D ON A.create_by = D.ACCOUNT |
| | | WHERE out_type = 'çäº§é¢æ' |
| | | AND A.task_no = @daa001 |
| | | AND ISNULL(IS_CXTR,'0') = 0"; |
| | | |
| | | var XcslWjsBar = Db.Ado.SqlQuery<dynamic>(sql2, sqlParams); |
| | | |
| | | var sql3 = @"SELECT B.ITEM_BARCODE ,B.QUANTITY,C.item_no,C.item_name,D.USER_NAME,B.CXTR_CREATE_DATE |
| | | FROM MES_INV_ITEM_OUTS A |
| | | LEFT JOIN MES_INV_ITEM_OUT_C_DETAILS B ON A.GUID = B.ITEM_OUT_ID |
| | | LEFT JOIN MES_ITEMS C ON B.ITEM_ID = C.item_id |
| | | LEFT JOIN SYS_USER D ON B.CXTR_CREATE_BY = D.ACCOUNT |
| | | WHERE out_type = 'çäº§é¢æ' |
| | | AND A.task_no = @daa001 |
| | | AND ISNULL(IS_CXTR,'0') = 1"; |
| | | |
| | | var XcslYjsBar = Db.Ado.SqlQuery<dynamic>(sql3, sqlParams); |
| | | |
| | | |
| | | var dto = new XcslResultDto |
| | | { |
| | | GD_Num = womdaa.Daa008, |
| | | workNo = womdaa.Daa021, |
| | | XcslItemList = XcslItem, |
| | | XcslWjsBarList = XcslWjsBar, |
| | | XcslYjsBarList = XcslYjsBar |
| | | |
| | | }; |
| | | |
| | | return dto; |
| | | } |
| | | |
| | | public dynamic ScanXctl(dynamic query) |
| | | { |
| | | if (query == null) throw new ArgumentNullException(nameof(query), "åæ°å¯¹è±¡ä¸è½ä¸º null"); |
| | | |
| | | // åæ°æ ¡éªï¼æ ¹æ®åå¨è¿ç¨æ°å¢åæ°ï¼ |
| | | if (string.IsNullOrEmpty(query.userAccount?.ToString())) |
| | | throw new ArgumentException("ç¨æ·åä¸å
许为空", nameof(query.userAccount)); |
| | | |
| | | if (string.IsNullOrEmpty(query.Bar?.ToString())) |
| | | throw new ArgumentException("ç©ææ¡ç ä¸å
许为空", nameof(query.Bar)); |
| | | |
| | | if (string.IsNullOrEmpty(query.DAA001?.ToString())) |
| | | throw new ArgumentException("å·¥ååå·ä¸å
许为空", nameof(query.DAA001)); |
| | | |
| | | var _strMsg = ""; |
| | | var _status = -1; |
| | | using (var conn = new SqlConnection(DbHelperSQL.strConn)) |
| | | { |
| | | using (var cmd = new SqlCommand("prc_pda_ScanXctl", conn)) |
| | | { |
| | | try |
| | | { |
| | | conn.Open(); |
| | | cmd.CommandType = CommandType.StoredProcedure; |
| | | // æ ¹æ®åå¨è¿ç¨è°æ´åæ°é¡ºåºåå½å |
| | | SqlParameter[] parameters = |
| | | { |
| | | new("@pi_user", SqlDbType.NVarChar, 100) { Value = query.userAccount }, |
| | | new("@pi_barcode", SqlDbType.NVarChar, 100) { Value = query.Bar }, |
| | | new("@pi_daa001", SqlDbType.NVarChar, 100) { Value = query.DAA001 }, |
| | | new("@po_outMsg", SqlDbType.NVarChar, 2000) { Direction = ParameterDirection.Output }, |
| | | new("@po_outStatus", SqlDbType.Int) { Direction = ParameterDirection.Output } |
| | | }; |
| | | |
| | | foreach (var parameter in parameters) |
| | | cmd.Parameters.Add(parameter); |
| | | |
| | | cmd.ExecuteNonQuery(); |
| | | |
| | | _strMsg = parameters[3].Value?.ToString() ?? ""; |
| | | _status = Convert.ToInt32(parameters[4].Value ?? -1); |
| | | |
| | | if (_status <= 0) throw new Exception(_strMsg); |
| | | |
| | | return new |
| | | { |
| | | message = _strMsg, |
| | | status = _status, |
| | | daa001 = query.DAA001, |
| | | barCode = query.Bar |
| | | }; |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | throw new Exception($"äº§çº¿æ¶æå¤±è´¥ï¼{ex.Message}"); |
| | | } |
| | | finally |
| | | { |
| | | conn.Close(); |
| | | } |
| | | } |
| | | } |
| | | } |
| | | |
| | | } |