啊鑫
2024-12-24 e328deb435c326025f3b7a510011e69d0353e69c
生产报工和生产超领的后台逻辑
已添加10个文件
已修改6个文件
2021 ■■■■ 文件已修改
Controllers/Warehouse/MesItemBlController.cs 47 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Controllers/Wom/MesWorkProdCDetailsController.cs 163 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Controllers/Wom/MesWorkProdController.cs 162 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Controllers/base/MesStaffController.cs 162 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Dto/service/ScanWorkRequest.cs 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Dto/service/ScanWorkResult.cs 18 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
entity/MesItemBl.cs 196 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
entity/MesItemBlDetail.cs 176 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
entity/MesWorkProd.cs 118 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
entity/MesWorkProdCDetails.cs 106 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
entity/Womdaa.cs 277 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
entity/Womdab.cs 164 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
service/Warehouse/MesItemBlManager.cs 71 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
service/Wom/MesWorkProdCDetailsManager.cs 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
service/Wom/MesWorkProdManager.cs 331 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
service/base/MesStaffManager.cs 11 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Controllers/Warehouse/MesItemBlController.cs
@@ -196,17 +196,17 @@
    /// <param name="query">查询参数,必须包含billNo</param>
    /// <returns>补料单明细列表</returns>
    /// <remarks>
    /// è¯·æ±‚示例:
    ///
    ///     è¯·æ±‚示例:
    ///     POST /api/MesItemBl/GetMesItemBlDetailByBillNo
    ///     {
    ///        "billNo": "BL202401010001"
    ///     "billNo": "BL202401010001"
    ///     }
    /// </remarks>
    /// <response code="200">成功获取补料单明细</response>
    /// <response code="400">获取失败,可能是单据号不存在或已完成</response>
    [HttpPost("GetMesItemBlDetailByBillNo")]
    public ResponseResult GetMesItemBlDetailByBillNo([FromBody] WarehouseQuery query)
    public ResponseResult GetMesItemBlDetailByBillNo(
        [FromBody] WarehouseQuery query)
    {
        try
        {
@@ -231,14 +231,13 @@
    /// <param name="query">查询参数</param>
    /// <returns>扫描结果和待处理列表</returns>
    /// <remarks>
    /// è¯·æ±‚示例:
    ///
    ///     è¯·æ±‚示例:
    ///     POST /api/MesItemBl/SctlScanBarcode
    ///     {
    ///        "billNo": "WO202401010001",
    ///        "barcode": "1234567890",
    ///        "userName": "admin",
    ///        "blNo": "BL202401010001"
    ///     "billNo": "WO202401010001",
    ///     "barcode": "1234567890",
    ///     "userName": "admin",
    ///     "blNo": "BL202401010001"
    ///     }
    /// </remarks>
    /// <response code="200">扫描成功</response>
@@ -301,22 +300,23 @@
    /// <param name="query">查询参数,必须包含billNo</param>
    /// <returns>超领单明细列表</returns>
    /// <remarks>
    /// è¯·æ±‚示例:
    ///
    ///     è¯·æ±‚示例:
    ///     POST /api/MesItemBl/GetMesItemBlDetailBySccBillNo
    ///     {
    ///        "billNo": "SC202401010001"
    ///     "billNo": "SC202401010001"
    ///     }
    /// </remarks>
    /// <response code="200">成功获取超领单明细</response>
    /// <response code="400">获取失败,返回具体错误信息</response>
    [HttpPost("GetMesItemBlDetailBySccBillNo")]
    public ResponseResult GetMesItemBlDetailBySccBillNo([FromBody] WarehouseQuery query)
    public ResponseResult GetMesItemBlDetailBySccBillNo(
        [FromBody] WarehouseQuery query)
    {
        try
        {
            dynamic resultInfos = new ExpandoObject();
            resultInfos.tbBillList = _manager.GetMesItemBlDetailBySccBillNo(query);
            resultInfos.tbBillList =
                _manager.GetMesItemBlDetailBySccBillNo(query);
            return new ResponseResult
            {
                status = 0,
@@ -336,25 +336,26 @@
    /// <param name="query">查询参数</param>
    /// <returns>扫描结果和待处理列表</returns>
    /// <remarks>
    /// è¯·æ±‚示例:
    ///
    ///     è¯·æ±‚示例:
    ///     POST /api/MesItemBl/ScanBarcodeForOverPicking
    ///     {
    ///        "billNo": "WO202401010001",
    ///        "barcode": "1234567890",
    ///        "userName": "admin",
    ///        "blNo": "SC202401010001"
    ///     "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)
    public ResponseResult ScanBarcodeForOverPicking(
        [FromBody] WarehouseQuery query)
    {
        try
        {
            dynamic resultInfos = new ExpandoObject();
            var (success, pendingList) = _manager.ScanBarcodeForOverPicking(query);
            var (success, pendingList) =
                _manager.ScanBarcodeForOverPicking(query);
            resultInfos.success = success;
            resultInfos.pendingList = pendingList;
            return new ResponseResult
Controllers/Wom/MesWorkProdCDetailsController.cs
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,163 @@
using System.Dynamic;
using Microsoft.AspNetCore.Mvc;
using NewPdaSqlServer.entity;
using NewPdaSqlServer.service.Wom;
using NewPdaSqlServer.util;
namespace NewPdaSqlServer.Controllers.Wom;
[ApiController]
[Route("api/[controller]")]
public class MesWorkProdCDetailsController : ControllerBase
{
    private readonly MesWorkProdCDetailsManager 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] MesWorkProdCDetails 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] MesWorkProdCDetails 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] MesWorkProdCDetails 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/Wom/MesWorkProdController.cs
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,162 @@
using System.Dynamic;
using Microsoft.AspNetCore.Mvc;
using NewPdaSqlServer.entity;
using NewPdaSqlServer.service.Wom;
using NewPdaSqlServer.util;
namespace NewPdaSqlServer.Controllers.Wom;
[ApiController]
[Route("api/[controller]")]
public class MesWorkProdController : ControllerBase
{
    private readonly MesWorkProdManager 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] MesWorkProd 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] MesWorkProd 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] MesWorkProd 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/base/MesStaffController.cs
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,162 @@
using System.Dynamic;
using Microsoft.AspNetCore.Mvc;
using NewPdaSqlServer.entity;
using NewPdaSqlServer.service.@base;
using NewPdaSqlServer.util;
namespace NewPdaSqlServer.Controllers.@base;
[ApiController]
[Route("api/[controller]")]
public class MesStaffController : ControllerBase
{
    private readonly MesStaffManager 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] MesStaff 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] MesStaff 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] MesStaff 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);
        }
    }
}
Dto/service/ScanWorkRequest.cs
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,10 @@
namespace NewPdaSqlServer.Dto.service;
public class ScanWorkRequest
{
    public string? UserNo { get; set; }
    public string? ItemBarcode { get; set; }
    public string? StaffNo { get; set; }
    public decimal? Quantity { get; set; }
}
Dto/service/ScanWorkResult.cs
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,18 @@
namespace NewPdaSqlServer.Dto.service;
/// <summary>
/// ç”Ÿäº§æŠ¥å·¥æ‰«æç»“æžœ
/// </summary>
public class ScanWorkResult
{
    public string TaskNo { get; set; }
    public string ItemNo { get; set; }
    public decimal PlanQty { get; set; }
    public decimal ReportedQty { get; set; }
    public decimal CurrentQty { get; set; }
    public decimal BarcodeQty { get; set; }
    public string ItemName { get; set; }
    public string ItemModel { get; set; }
    public string Message { get; set; }
}
entity/MesItemBl.cs
@@ -7,149 +7,149 @@
[SugarTable("MES_ITEM_BL")]
public class MesItemBl
{
 /// <summary>
   ///     ID
   /// </summary>
   [SugarColumn(ColumnName = "id", IsPrimaryKey = true)]
    /// <summary>
    ///     ID
    /// </summary>
    [SugarColumn(ColumnName = "id", IsPrimaryKey = true)]
    public Guid Id { get; set; }
 /// <summary>
   ///     è¡¥æ–™å•号
   /// </summary>
   [SugarColumn(ColumnName = "bl_no")]
    /// <summary>
    ///     è¡¥æ–™å•号
    /// </summary>
    [SugarColumn(ColumnName = "bl_no")]
    public string BlNo { get; set; }
 /// <summary>
   ///     ç”Ÿäº§å·¥å•
   /// </summary>
   [SugarColumn(ColumnName = "bl001")]
    /// <summary>
    ///     ç”Ÿäº§å·¥å•
    /// </summary>
    [SugarColumn(ColumnName = "bl001")]
    public string Bl001 { get; set; }
 /// <summary>
   ///     äº§å“ç¼–号
   /// </summary>
   [SugarColumn(ColumnName = "bl002")]
    /// <summary>
    ///     äº§å“ç¼–号
    /// </summary>
    [SugarColumn(ColumnName = "bl002")]
    public string Bl002 { get; set; }
 /// <summary>
   ///     äº§é‡
   /// </summary>
   [SugarColumn(ColumnName = "bl003")]
    /// <summary>
    ///     äº§é‡
    /// </summary>
    [SugarColumn(ColumnName = "bl003")]
    public int? Bl003 { get; set; }
 /// <summary>
   ///     ç”³è¯·äºº
   /// </summary>
   [SugarColumn(ColumnName = "bl004")]
    /// <summary>
    ///     ç”³è¯·äºº
    /// </summary>
    [SugarColumn(ColumnName = "bl004")]
    public string Bl004 { get; set; }
 /// <summary>
   ///     é¢†æ–™æ—¥æœŸ
   /// </summary>
   [SugarColumn(ColumnName = "bl005")]
    /// <summary>
    ///     é¢†æ–™æ—¥æœŸ
    /// </summary>
    [SugarColumn(ColumnName = "bl005")]
    public DateTime? Bl005 { get; set; }
 /// <summary>
   ///     å®¡æ ¸æ—¥æœŸ
   /// </summary>
   [SugarColumn(ColumnName = "bl006")]
    /// <summary>
    ///     å®¡æ ¸æ—¥æœŸ
    /// </summary>
    [SugarColumn(ColumnName = "bl006")]
    public DateTime? Bl006 { get; set; }
 /// <summary>
   ///     è¡¥æ–™åŽŸå› 
   /// </summary>
   [SugarColumn(ColumnName = "bl007")]
    /// <summary>
    ///     è¡¥æ–™åŽŸå› 
    /// </summary>
    [SugarColumn(ColumnName = "bl007")]
    public string Bl007 { get; set; }
 /// <summary>
   ///     å‡ºåº“类别(补料,超领)
   /// </summary>
   [SugarColumn(ColumnName = "bl008")]
    /// <summary>
    ///     å‡ºåº“类别(补料,超领)
    /// </summary>
    [SugarColumn(ColumnName = "bl008")]
    public string Bl008 { get; set; }
 /// <summary>
   ///     ä¸šåŠ¡ç±»åž‹
   /// </summary>
   [SugarColumn(ColumnName = "bl009")]
    /// <summary>
    ///     ä¸šåŠ¡ç±»åž‹
    /// </summary>
    [SugarColumn(ColumnName = "bl009")]
    public string Bl009 { get; set; }
 /// <summary>
   ///     å‘料仓
   /// </summary>
   [SugarColumn(ColumnName = "bl010")]
    /// <summary>
    ///     å‘料仓
    /// </summary>
    [SugarColumn(ColumnName = "bl010")]
    public string Bl010 { get; set; }
 /// <summary>
   ///     è¡¥æ–™éƒ¨é—¨
   /// </summary>
   [SugarColumn(ColumnName = "bl011")]
    /// <summary>
    ///     è¡¥æ–™éƒ¨é—¨
    /// </summary>
    [SugarColumn(ColumnName = "bl011")]
    public string Bl011 { get; set; }
 /// <summary>
   ///     è¡¥æ–™äº§çº¿
   /// </summary>
   [SugarColumn(ColumnName = "bl012")]
    /// <summary>
    ///     è¡¥æ–™äº§çº¿
    /// </summary>
    [SugarColumn(ColumnName = "bl012")]
    public string Bl012 { get; set; }
 /// <summary>
   ///     ä»»åŠ¡å•å·
   /// </summary>
   [SugarColumn(ColumnName = "bl013")]
    /// <summary>
    ///     ä»»åŠ¡å•å·
    /// </summary>
    [SugarColumn(ColumnName = "bl013")]
    public string Bl013 { get; set; }
 /// <summary>
   ///     äº§å“åç§°
   /// </summary>
   [SugarColumn(ColumnName = "bl014")]
    /// <summary>
    ///     äº§å“åç§°
    /// </summary>
    [SugarColumn(ColumnName = "bl014")]
    public string Bl014 { get; set; }
 /// <summary>
   ///     äº§å“åž‹å·
   /// </summary>
   [SugarColumn(ColumnName = "bl015")]
    /// <summary>
    ///     äº§å“åž‹å·
    /// </summary>
    [SugarColumn(ColumnName = "bl015")]
    public string Bl015 { get; set; }
 /// <summary>
   ///     å®¡æ ¸äºº
   /// </summary>
   [SugarColumn(ColumnName = "bl016")]
    /// <summary>
    ///     å®¡æ ¸äºº
    /// </summary>
    [SugarColumn(ColumnName = "bl016")]
    public string Bl016 { get; set; }
 /// <summary>
   ///     ä¸šåŠ¡ç±»åž‹ç¼–ç 
   /// </summary>
   [SugarColumn(ColumnName = "bl017")]
    /// <summary>
    ///     ä¸šåŠ¡ç±»åž‹ç¼–ç 
    /// </summary>
    [SugarColumn(ColumnName = "bl017")]
    public string Bl017 { get; set; }
 /// <summary>
   ///     å®¡æ ¸çŠ¶æ€
   ///     é»˜è®¤å€¼: ((0))
   /// </summary>
   [SugarColumn(ColumnName = "bl018")]
    /// <summary>
    ///     å®¡æ ¸çŠ¶æ€
    ///     é»˜è®¤å€¼: ((0))
    /// </summary>
    [SugarColumn(ColumnName = "bl018")]
    public bool? Bl018 { get; set; }
 /// <summary>
   ///     å®Œç»“标识
   ///     é»˜è®¤å€¼: ((0))
   /// </summary>
   [SugarColumn(ColumnName = "bl019")]
    /// <summary>
    ///     å®Œç»“标识
    ///     é»˜è®¤å€¼: ((0))
    /// </summary>
    [SugarColumn(ColumnName = "bl019")]
    public bool? Bl019 { get; set; }
 /// <summary>
   ///     äº§å“id
   /// </summary>
   [SugarColumn(ColumnName = "item_id")]
    /// <summary>
    ///     äº§å“id
    /// </summary>
    [SugarColumn(ColumnName = "item_id")]
    public int? ItemId { get; set; }
 /// <summary>
   ///     å®Œæˆäºº
   /// </summary>
   [SugarColumn(ColumnName = "wc_user")]
    /// <summary>
    ///     å®Œæˆäºº
    /// </summary>
    [SugarColumn(ColumnName = "wc_user")]
    public string WcUser { get; set; }
 /// <summary>
   ///     å®Œæˆæ—¶é—´
   /// </summary>
   [SugarColumn(ColumnName = "wc_time")]
    /// <summary>
    ///     å®Œæˆæ—¶é—´
    /// </summary>
    [SugarColumn(ColumnName = "wc_time")]
    public string WcTime { get; set; }
}
entity/MesItemBlDetail.cs
@@ -7,137 +7,137 @@
[SugarTable("MES_ITEM_BL_DETAIL")]
public class MesItemBlDetail
{
 /// <summary>
   ///     ID
   /// </summary>
   [SugarColumn(ColumnName = "id", IsPrimaryKey = true)]
    /// <summary>
    ///     ID
    /// </summary>
    [SugarColumn(ColumnName = "id", IsPrimaryKey = true)]
    public Guid Id { get; set; }
 /// <summary>
   ///     MID
   /// </summary>
   [SugarColumn(ColumnName = "mid")]
    /// <summary>
    ///     MID
    /// </summary>
    [SugarColumn(ColumnName = "mid")]
    public Guid? Mid { get; set; }
 /// <summary>
   ///     å·¥å•号
   /// </summary>
   [SugarColumn(ColumnName = "bld001")]
    /// <summary>
    ///     å·¥å•号
    /// </summary>
    [SugarColumn(ColumnName = "bld001")]
    public string Bld001 { get; set; }
 /// <summary>
   ///     ç‰©æ–™ç¼–号
   /// </summary>
   [SugarColumn(ColumnName = "bld002")]
    /// <summary>
    ///     ç‰©æ–™ç¼–号
    /// </summary>
    [SugarColumn(ColumnName = "bld002")]
    public string Bld002 { get; set; }
 /// <summary>
   ///     ç‰©æ–™åç§°
   /// </summary>
   [SugarColumn(ColumnName = "bld003")]
    /// <summary>
    ///     ç‰©æ–™åç§°
    /// </summary>
    [SugarColumn(ColumnName = "bld003")]
    public string Bld003 { get; set; }
 /// <summary>
   ///     è§„格型号
   /// </summary>
   [SugarColumn(ColumnName = "bld004")]
    /// <summary>
    ///     è§„格型号
    /// </summary>
    [SugarColumn(ColumnName = "bld004")]
    public string Bld004 { get; set; }
 /// <summary>
   ///     é¢œè‰²
   /// </summary>
   [SugarColumn(ColumnName = "bld005")]
    /// <summary>
    ///     é¢œè‰²
    /// </summary>
    [SugarColumn(ColumnName = "bld005")]
    public string Bld005 { get; set; }
 /// <summary>
   ///     è®¡åˆ’数量
   /// </summary>
   [SugarColumn(ColumnName = "bld006")]
    /// <summary>
    ///     è®¡åˆ’数量
    /// </summary>
    [SugarColumn(ColumnName = "bld006")]
    public int? Bld006 { get; set; }
 /// <summary>
   ///     ç”³è¯·æ•°é‡
   /// </summary>
   [SugarColumn(ColumnName = "bld007")]
    /// <summary>
    ///     ç”³è¯·æ•°é‡
    /// </summary>
    [SugarColumn(ColumnName = "bld007")]
    public int? Bld007 { get; set; }
 /// <summary>
   ///     å·²é¢†æ•°é‡
   ///     é»˜è®¤å€¼: ((0))
   /// </summary>
   [SugarColumn(ColumnName = "bld008")]
    /// <summary>
    ///     å·²é¢†æ•°é‡
    ///     é»˜è®¤å€¼: ((0))
    /// </summary>
    [SugarColumn(ColumnName = "bld008")]
    public int? Bld008 { get; set; }
 /// <summary>
   ///     å•位
   /// </summary>
   [SugarColumn(ColumnName = "bld009")]
    /// <summary>
    ///     å•位
    /// </summary>
    [SugarColumn(ColumnName = "bld009")]
    public string Bld009 { get; set; }
 /// <summary>
   ///     å¤‡æ³¨
   /// </summary>
   [SugarColumn(ColumnName = "bld010")]
    /// <summary>
    ///     å¤‡æ³¨
    /// </summary>
    [SugarColumn(ColumnName = "bld010")]
    public string Bld010 { get; set; }
 /// <summary>
   ///     å®Œç»“标识
   ///     é»˜è®¤å€¼: ((0))
   /// </summary>
   [SugarColumn(ColumnName = "bld011")]
    /// <summary>
    ///     å®Œç»“标识
    ///     é»˜è®¤å€¼: ((0))
    /// </summary>
    [SugarColumn(ColumnName = "bld011")]
    public int? Bld011 { get; set; }
 /// <summary>
   ///     ç‰©æ–™id
   /// </summary>
   [SugarColumn(ColumnName = "bld012")]
    /// <summary>
    ///     ç‰©æ–™id
    /// </summary>
    [SugarColumn(ColumnName = "bld012")]
    public int? Bld012 { get; set; }
 /// <summary>
   ///     é¡¹æ¬¡
   /// </summary>
   [SugarColumn(ColumnName = "bld013")]
    /// <summary>
    ///     é¡¹æ¬¡
    /// </summary>
    [SugarColumn(ColumnName = "bld013")]
    public int? Bld013 { get; set; }
 /// <summary>
   ///     ERP投料单行id
   /// </summary>
   [SugarColumn(ColumnName = "bld014")]
    /// <summary>
    ///     ERP投料单行id
    /// </summary>
    [SugarColumn(ColumnName = "bld014")]
    public int? Bld014 { get; set; }
 /// <summary>
   /// </summary>
   [SugarColumn(ColumnName = "bld015")]
    /// <summary>
    /// </summary>
    [SugarColumn(ColumnName = "bld015")]
    public string Bld015 { get; set; }
 /// <summary>
   /// </summary>
   [SugarColumn(ColumnName = "bld016")]
    /// <summary>
    /// </summary>
    [SugarColumn(ColumnName = "bld016")]
    public string Bld016 { get; set; }
 /// <summary>
   /// </summary>
   [SugarColumn(ColumnName = "bld017")]
    /// <summary>
    /// </summary>
    [SugarColumn(ColumnName = "bld017")]
    public string Bld017 { get; set; }
 /// <summary>
   /// </summary>
   [SugarColumn(ColumnName = "bld018")]
    /// <summary>
    /// </summary>
    [SugarColumn(ColumnName = "bld018")]
    public string Bld018 { get; set; }
 /// <summary>
   /// </summary>
   [SugarColumn(ColumnName = "bld019")]
    /// <summary>
    /// </summary>
    [SugarColumn(ColumnName = "bld019")]
    public string Bld019 { get; set; }
 /// <summary>
   /// </summary>
   [SugarColumn(ColumnName = "bld020")]
    /// <summary>
    /// </summary>
    [SugarColumn(ColumnName = "bld020")]
    public string Bld020 { get; set; }
 /// <summary>
   ///     å…³è”çš„dab表主键
   /// </summary>
   [SugarColumn(ColumnName = "dabGuid")]
    /// <summary>
    ///     å…³è”çš„dab表主键
    /// </summary>
    [SugarColumn(ColumnName = "dabGuid")]
    public Guid? DabGuid { get; set; }
}
entity/MesWorkProd.cs
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,118 @@
using SqlSugar;
namespace NewPdaSqlServer.entity;
/// <summary>
///     æŠ¥å·¥ä¸»è¡¨
/// </summary>
[SugarTable("MES_WORK_PROD")]
public class MesWorkProd
{
    /// <summary>
    ///     å”¯ä¸€æ ‡è¯†ç¬¦
    ///     é»˜è®¤å€¼: (newid())
    /// </summary>
    [SugarColumn(ColumnName = "id", IsPrimaryKey = true)]
    public Guid Id { get; set; }
    /// <summary>
    ///     æŠ¥å·¥å•号
    /// </summary>
    [SugarColumn(ColumnName = "bill_no")]
    public string BillNo { get; set; }
    /// <summary>
    ///     ç”Ÿäº§çº¿
    /// </summary>
    [SugarColumn(ColumnName = "line_no")]
    public string LineNo { get; set; }
    /// <summary>
    /// </summary>
    [SugarColumn(ColumnName = "company")]
    public string Company { get; set; }
    /// <summary>
    /// </summary>
    [SugarColumn(ColumnName = "factory")]
    public string Factory { get; set; }
    /// <summary>
    /// </summary>
    [SugarColumn(ColumnName = "create_by")]
    public string CreateBy { get; set; }
    /// <summary>
    ///     åˆ›å»ºæ—¥æœŸ
    ///     é»˜è®¤å€¼: (getdate())
    /// </summary>
    [SugarColumn(ColumnName = "create_date")]
    public DateTime? CreateDate { get; set; }
    /// <summary>
    /// </summary>
    [SugarColumn(ColumnName = "lastupdate_by")]
    public string LastupdateBy { get; set; }
    /// <summary>
    ///     é»˜è®¤å€¼: (getdate())
    /// </summary>
    [SugarColumn(ColumnName = "lastupdate_date")]
    public DateTime? LastupdateDate { get; set; }
    /// <summary>
    ///     ç­æ¬¡
    /// </summary>
    [SugarColumn(ColumnName = "class_no")]
    public string ClassNo { get; set; }
    /// <summary>
    /// </summary>
    [SugarColumn(ColumnName = "check_user")]
    public string CheckUser { get; set; }
    /// <summary>
    /// </summary>
    [SugarColumn(ColumnName = "check_date")]
    public DateTime? CheckDate { get; set; }
    /// <summary>
    ///     é»˜è®¤å€¼: ((0))
    /// </summary>
    [SugarColumn(ColumnName = "status")]
    public int? Status { get; set; }
    /// <summary>
    ///     æ´¾å·¥å•号
    /// </summary>
    [SugarColumn(ColumnName = "pbill_no")]
    public string PbillNo { get; set; }
    /// <summary>
    /// </summary>
    [SugarColumn(ColumnName = "bill_type_id")]
    public decimal? BillTypeId { get; set; }
    /// <summary>
    /// </summary>
    [SugarColumn(ColumnName = "transaction_no")]
    public decimal? TransactionNo { get; set; }
    /// <summary>
    ///     ä»»åŠ¡å•å·
    /// </summary>
    [SugarColumn(ColumnName = "task_no")]
    public string TaskNo { get; set; }
    /// <summary>
    ///     å¡æ¿æ•°é‡
    /// </summary>
    [SugarColumn(ColumnName = "kb_qty")]
    public decimal? KbQty { get; set; }
    /// <summary>
    ///     æ¯ç®±æ•°é‡
    /// </summary>
    [SugarColumn(ColumnName = "box_qty")]
    public decimal? BoxQty { get; set; }
}
entity/MesWorkProdCDetails.cs
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,106 @@
using SqlSugar;
namespace NewPdaSqlServer.entity;
/// <summary>
///     æŠ¥å·¥æ¡ç è¡¨
/// </summary>
[SugarTable("MES_WORK_PROD_C_DETAILS")]
public class MesWorkProdCDetails
{
    /// <summary>
    ///     å”¯ä¸€æ ‡è¯†ç¬¦
    ///     é»˜è®¤å€¼: (newid())
    /// </summary>
    [SugarColumn(ColumnName = "id", IsPrimaryKey = true)]
    public Guid Id { get; set; }
    /// <summary>
    ///     æŠ¥å·¥å•号
    /// </summary>
    [SugarColumn(ColumnName = "bill_no")]
    public string BillNo { get; set; }
    /// <summary>
    ///     æŠ¥å·¥æ¡ç 
    /// </summary>
    [SugarColumn(ColumnName = "item_barcode")]
    public string ItemBarcode { get; set; }
    /// <summary>
    ///     æ•°é‡
    /// </summary>
    [SugarColumn(ColumnName = "quantity")]
    public int? Quantity { get; set; }
    /// <summary>
    /// </summary>
    [SugarColumn(ColumnName = "company")]
    public string Company { get; set; }
    /// <summary>
    /// </summary>
    [SugarColumn(ColumnName = "factory")]
    public string Factory { get; set; }
    /// <summary>
    /// </summary>
    [SugarColumn(ColumnName = "create_by")]
    public string CreateBy { get; set; }
    /// <summary>
    /// </summary>
    [SugarColumn(ColumnName = "create_date")]
    public DateTime? CreateDate { get; set; }
    /// <summary>
    /// </summary>
    [SugarColumn(ColumnName = "lastupdate_by")]
    public string LastupdateBy { get; set; }
    /// <summary>
    /// </summary>
    [SugarColumn(ColumnName = "lastupdate_date")]
    public DateTime? LastupdateDate { get; set; }
    /// <summary>
    ///     ç‰©æ–™ç¼–号
    /// </summary>
    [SugarColumn(ColumnName = "item_no")]
    public string ItemNo { get; set; }
    /// <summary>
    ///     æ´¾å·¥å•号
    /// </summary>
    [SugarColumn(ColumnName = "pbill_no")]
    public string PbillNo { get; set; }
    /// <summary>
    ///     æœ€åŽå·¥åº
    /// </summary>
    [SugarColumn(ColumnName = "work_last")]
    public decimal? WorkLast { get; set; }
    /// <summary>
    ///     ä¸å°æ¬¡æ•°
    /// </summary>
    [SugarColumn(ColumnName = "silk_pqty")]
    public decimal? SilkPqty { get; set; }
    /// <summary>
    ///     æ´¾å·¥ä»Žè¡¨ID
    /// </summary>
    [SugarColumn(ColumnName = "silk_id")]
    public decimal? SilkId { get; set; }
    /// <summary>
    /// </summary>
    [SugarColumn(ColumnName = "silk")]
    public string Silk { get; set; }
    /// <summary>
    ///     æŠ¥å·¥å‘˜å·¥
    /// </summary>
    [SugarColumn(ColumnName = "bg_yg")]
    public decimal? BgYg { get; set; }
}
entity/Womdaa.cs
@@ -8,418 +8,415 @@
public class Womdaa
{
    /// <summary>
    ///
    /// é»˜è®¤å€¼: (newid())
    ///</summary>
    ///     é»˜è®¤å€¼: (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; }
    /// <summary>
    /// äº§å“ID
    ///</summary>
    ///     äº§å“ID
    /// </summary>
    [SugarColumn(ColumnName = "daa002")]
    public string? Daa002 { get; set; }
    /// <summary>
    /// äº§å“åç§°
    ///</summary>
    ///     äº§å“åç§°
    /// </summary>
    [SugarColumn(ColumnName = "daa003")]
    public string? Daa003 { get; set; }
    /// <summary>
    /// äº§å“è§„æ ¼
    ///</summary>
    ///     äº§å“è§„æ ¼
    /// </summary>
    [SugarColumn(ColumnName = "daa004")]
    public string? Daa004 { get; set; }
    /// <summary>
    /// å•位
    ///</summary>
    ///     å•位
    /// </summary>
    [SugarColumn(ColumnName = "daa005")]
    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; }
    /// <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; }
    /// <summary>
    /// æŠ•料单单号
    ///</summary>
    ///     æŠ•料单单号
    /// </summary>
    [SugarColumn(ColumnName = "daa014")]
    public string? Daa014 { get; set; }
    /// <summary>
    /// ç”Ÿäº§çº¿åˆ«
    ///</summary>
    ///     ç”Ÿäº§çº¿åˆ«
    /// </summary>
    [SugarColumn(ColumnName = "daa015")]
    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; }
    /// <summary>
    /// é½å¥—状态
    ///</summary>
    ///     é½å¥—状态
    /// </summary>
    [SugarColumn(ColumnName = "daa019")]
    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; }
    /// <summary>
    /// çº¿åˆ«ç¼–码
    ///</summary>
    ///     çº¿åˆ«ç¼–码
    /// </summary>
    [SugarColumn(ColumnName = "daa020")]
    public string? Daa020 { get; set; }
    /// <summary>
    /// ä»»åŠ¡å•å•å·
    ///</summary>
    ///     ä»»åŠ¡å•å•å·
    /// </summary>
    [SugarColumn(ColumnName = "daa021")]
    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; }
    /// <summary>
    /// é¦–件是否检验1-检验,0未检验
    ///</summary>
    ///     é¦–件是否检验1-检验,0未检验
    /// </summary>
    [SugarColumn(ColumnName = "daa025")]
    public string? Daa025 { get; set; }
    /// <summary>
    /// é¦–件检验结果
    ///</summary>
    ///     é¦–件检验结果
    /// </summary>
    [SugarColumn(ColumnName = "daa026")]
    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; }
    /// <summary>
    /// æŠ¥æ£€æ—¶é—´
    ///</summary>
    ///     æŠ¥æ£€æ—¶é—´
    /// </summary>
    [SugarColumn(ColumnName = "reporttime")]
    public DateTime? Reporttime { get; set; }
    /// <summary>
    /// æœºå°ç¼–号
    ///</summary>
    ///     æœºå°ç¼–号
    /// </summary>
    [SugarColumn(ColumnName = "machine_no")]
    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; }
    /// <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; }
    /// <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; }
    /// <summary>
    /// æ˜¯å¦é¦–检
    ///</summary>
    ///     æ˜¯å¦é¦–检
    /// </summary>
    [SugarColumn(ColumnName = "IS_SJ")]
    public int? IsSj { get; set; }
    /// <summary>
    /// äº§å“ç¼–码
    ///</summary>
    ///     äº§å“ç¼–码
    /// </summary>
    [SugarColumn(ColumnName = "daa029")]
    public string? Daa029 { get; set; }
    /// <summary>
    /// å®žé™…线体编码
    ///</summary>
    ///     å®žé™…线体编码
    /// </summary>
    [SugarColumn(ColumnName = "sj_xt")]
    public string? SjXt { get; set; }
}
entity/Womdab.cs
@@ -8,233 +8,231 @@
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>
    /// ææ–™id
    ///</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>
    ///     ç‰©æ–™ç¼–码
    /// </summary>
    [SugarColumn(ColumnName = "dab024")]
    public string? Dab024 { get; set; }
service/Warehouse/MesItemBlManager.cs
@@ -235,7 +235,6 @@
                .Count();
            if (itemCount > 0)
            {
                // æ›´æ–°å·²å­˜åœ¨çš„物料明细数量
                db.Updateable<MesInvItemOutItems>()
                    .SetColumns(i =>
@@ -243,9 +242,7 @@
                    .Where(i =>
                        i.ItemOutId == outId && i.ItemId == stockBarcode.ItemId)
                    .ExecuteCommand();
            }
            else
            {
                // æ’入新的物料明细记录
                db.Insertable(new MesInvItemOutItems
                {
@@ -267,11 +264,10 @@
                    ErpId = womdab.Eid,
                    ErpAutoid = womdab.Erpid,
                    PbillNo = query.billNo,
                    ItemId = blDetail.Bld012,
                    ItemId = blDetail.Bld012
                    // Unit = blDetail.Bld009,
                    // DepotId = (int)stockBarcode.DepotsId
                }).IgnoreColumns(true).ExecuteCommand();
            }
            // æ’入出库单条码明细
            db.Insertable(new MesInvItemOutCDetails
@@ -332,7 +328,7 @@
                WorkNo = blDetail.Bld001, // Matches C_QTCK_D.Bld001
                WorkLine = blDetail.Bld013, // Matches C_QTCK_D.Bld013
                SuppNo = stockBarcode.SuppNo,
                ItemId = stockBarcode.ItemId,
                ItemId = stockBarcode.ItemId
                // CkDepot = stockBarcode.DepotsId
            }).IgnoreColumns(true).ExecuteCommand();
@@ -363,13 +359,11 @@
                .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>()
@@ -386,7 +380,6 @@
                .First();
            if (unfinishedDetail == null)
            {
                // å¦‚果没有未完成的明细,更新补料单状态为已完成
                db.Updateable<MesItemBl>()
                    .SetColumns(it => new MesItemBl
@@ -397,7 +390,6 @@
                    })
                    .Where(it => it.Id == mesItemBl.Id)
                    .ExecuteCommand();
            }
            return 1;
        });
@@ -471,7 +463,7 @@
        if (stockBarcode == null)
            throw new Exception($"库存中无此条码,请核对!{query.barcode}");
        var totalQty = stockBarcode.Quantity;
        string newBarcode = null;
@@ -527,7 +519,7 @@
                    // Memo = stockBarcode.Memo,
                    SuppNo = stockBarcode.SuppNo,
                    // InsDate = stockBarcode.InsDate, // Added InsDate
                    ItemId = stockBarcode.ItemId,
                    ItemId = stockBarcode.ItemId
                    // ItemUnit = stockBarcode.ItemUnit // Added ItemUnit
                }).IgnoreColumns(true).ExecuteCommand();
@@ -567,7 +559,7 @@
                    WorkNo = stockBarcode.WorkNo,
                    WorkLine = stockBarcode.WorkLine,
                    SuppNo = stockBarcode.SuppNo,
                    ItemId = stockBarcode.ItemId,
                    ItemId = stockBarcode.ItemId
                    // UnitId = stockBarcode.ItemUnit
                }).IgnoreColumns(true).ExecuteCommand();
@@ -601,7 +593,7 @@
                    WorkLine = stockBarcode.WorkLine,
                    SuppNo = stockBarcode.SuppNo,
                    SuppId = stockBarcode.SuppId,
                    ItemId = stockBarcode.ItemId,
                    ItemId = stockBarcode.ItemId
                    // CkDepot = stockBarcode.DepotsId
                }).IgnoreColumns(true).ExecuteCommand();
            }
@@ -611,7 +603,7 @@
            }
            if (string.IsNullOrEmpty(newBarcode)) newBarcode = query.barcode;
            // æ£€æŸ¥è¡¥æ–™å•状态
            var mesItemBl = Db.Queryable<MesItemBl>()
                .Where(a => a.BlNo == query.blNo && (a.Bl018 ?? false) == false)
@@ -652,7 +644,8 @@
                throw new Exception($"工单 {query.billNo} ä¸å­˜åœ¨ï¼Œè¯·ç¡®è®¤ï¼");
            var womdab = Db.Queryable<Womdab>()
                .Where(b => b.Dab001 == query.billNo && b.Erpid == blDetail.Bld014)
                .Where(b =>
                    b.Dab001 == query.billNo && b.Erpid == blDetail.Bld014)
                .First();
            if (womdab == null)
@@ -660,13 +653,13 @@
            // æ£€æŸ¥å·²å‘料数量是否超过待发料数量
            var sumQty = db.Queryable<MesInvItemOutCDetails>()
                .Where(it => it.TaskNo == query.blNo && it.ItemId == stockBarcode.ItemId)
                .Where(it =>
                    it.TaskNo == query.blNo && it.ItemId == stockBarcode.ItemId)
                .Sum(it => it.Quantity);
            if (sumQty > remainingQty)
            {
                throw new Exception($"拆分数量:{sumQty} å¤§äºŽå¾…发料数量:{remainingQty},请核对!");
            }
                throw new Exception(
                    $"拆分数量:{sumQty} å¤§äºŽå¾…发料数量:{remainingQty},请核对!");
            // èŽ·å–æˆ–åˆ›å»ºå‡ºåº“å•
            var itemOut = db.Queryable<MesInvItemOuts>()
@@ -720,7 +713,6 @@
                .Count();
            if (itemOutItemCount == 0)
            {
                // æ’入新的出库单明细
                executeCommand += db.Insertable(new MesInvItemOutItems
                {
@@ -742,13 +734,11 @@
                    ErpId = womdab.Eid,
                    ErpAutoid = womdab.Erpid,
                    PbillNo = query.billNo,
                    ItemId = blDetail.Bld012,
                    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)
@@ -756,7 +746,6 @@
                        it.ItemOutId == itemOut.Guid &&
                        it.ItemId == stockBarcode.ItemId)
                    .ExecuteCommand();
            }
            // æ’入出库条码明细
            executeCommand += db.Insertable(new MesInvItemOutCDetails
@@ -816,7 +805,7 @@
                WorkNo = blDetail.Bld001,
                WorkLine = blDetail.Bld013,
                SuppNo = stockBarcode.SuppNo,
                ItemId = stockBarcode.ItemId,
                ItemId = stockBarcode.ItemId
                // CkDepot = stockBarcode.DepotsId
            }).IgnoreColumns(true).ExecuteCommand();
@@ -848,13 +837,11 @@
                .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();
            }
            // æ£€æŸ¥æ˜¯å¦è¿˜æœ‰æœªå®Œæˆçš„æ˜Žç»†
@@ -863,7 +850,6 @@
                .First();
            if (unfinishedDetail == null)
            {
                // å¦‚果没有找到未完成明细,则更新补料单状态为已完成
                executeCommand += db.Updateable<MesItemBl>()
                    .SetColumns(it => new MesItemBl
@@ -874,8 +860,7 @@
                    })
                    .Where(it => it.Id == mesItemBl.Id)
                    .ExecuteCommand();
            }
            if (executeCommand <= 1) throw new Exception("更新失败");
            return executeCommand;
@@ -1103,7 +1088,7 @@
        UseTransaction(db =>
        {
            // ç”Ÿæˆæˆ–获取出库单
            Guid outId = Guid.Empty;
            var outId = Guid.Empty;
            var outNo = "";
            var outRecord = db.Queryable<MesInvItemOuts>()
                .Where(a => a.BbillNo == query.blNo
@@ -1157,7 +1142,6 @@
                .First();
            if (outItem == null)
            {
                // æ’入出库单明细
                db.Insertable(new MesInvItemOutItems
                {
@@ -1177,13 +1161,11 @@
                    ErpId = womdab.Eid,
                    ErpAutoid = womdab.Erpid,
                    PbillNo = query.billNo,
                    ItemId = blDetail.Bld012,
                    ItemId = blDetail.Bld012
                    // Unit = blDetail.Bld009,
                    // DepotId = stockBarcode.DepotsId
                }).IgnoreColumns(true).ExecuteCommand();
            }
            else
            {
                // æ›´æ–°å‡ºåº“单明细数量
                db.Updateable<MesInvItemOutItems>()
                    .SetColumns(it => new MesInvItemOutItems
@@ -1194,7 +1176,6 @@
                        it.ItemOutId == outId &&
                        it.ItemId == stockBarcode.ItemId)
                    .ExecuteCommand();
            }
            // æ’入出库条码明细
            db.Insertable(new MesInvItemOutCDetails
@@ -1247,7 +1228,7 @@
                WorkLine = blDetail.Bld013,
                SuppNo = stockBarcode.SuppNo,
                SuppId = stockBarcode.SuppId,
                ItemId = stockBarcode.ItemId,
                ItemId = stockBarcode.ItemId
                // CkDepot = stockBarcode.DepotsId
            }).IgnoreColumns(true).ExecuteCommand();
@@ -1287,12 +1268,10 @@
            // å¦‚果所有明细完成,更新超领单状态为已完成
            if (!hasUnfinished)
            {
                db.Updateable<MesItemBl>()
                    .SetColumns(it => it.Bl019 == true)
                    .Where(it => it.Id == mesItemBl.Id)
                    .ExecuteCommand();
            }
            return 1;
        });
@@ -1317,7 +1296,7 @@
    }
    /// <summary>
    /// ç”Ÿäº§è¶…领打印条码
    ///     ç”Ÿäº§è¶…领打印条码
    /// </summary>
    /// <param name="query">查询参数</param>
    /// <returns>处理结果</returns>
@@ -1560,7 +1539,6 @@
                .Count();
            if (itemOutItemCount == 0)
            {
                // æ’入新的出库单明细
                db.Insertable(new MesInvItemOutItems
                {
@@ -1582,13 +1560,11 @@
                    ErpId = workOrderDetail.Eid,
                    ErpAutoid = workOrderDetail.Erpid,
                    PbillNo = query.billNo,
                    ItemId = blDetail.Bld012,
                    ItemId = blDetail.Bld012
                    // Unit = blDetail.Bld009,
                    // DepotId = stockBarcode.DepotsId
                }).IgnoreColumns(true).ExecuteCommand();
            }
            else
            {
                // æ›´æ–°å·²æœ‰å‡ºåº“单明细数量
                db.Updateable<MesInvItemOutItems>()
                    .SetColumns(it => it.Quantity == it.Quantity + query.Num)
@@ -1596,7 +1572,6 @@
                        it.ItemOutId == itemOut.Guid &&
                        it.ItemId == stockBarcode.ItemId)
                    .ExecuteCommand();
            }
            // æ’入出库明细记录
            db.Insertable(new MesInvItemOutCDetails
@@ -1685,13 +1660,11 @@
                .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>()
@@ -1700,12 +1673,10 @@
            // å¦‚果所有明细完成,更新补料单状态为已完成
            if (!hasUnfinished)
            {
                db.Updateable<MesItemBl>()
                    .SetColumns(it => it.Bl019 == true)
                    .Where(it => it.Id == mesItemBl.Id)
                    .ExecuteCommand();
            }
            return 1;
        });
service/Wom/MesWorkProdCDetailsManager.cs
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,9 @@
using NewPdaSqlServer.DB;
using NewPdaSqlServer.entity;
namespace NewPdaSqlServer.service.Wom;
public class MesWorkProdCDetailsManager : Repository<MesWorkProdCDetails>
{
    //当前类已经继承了 Repository å¢žã€åˆ ã€æŸ¥ã€æ”¹çš„æ–¹æ³•
}
service/Wom/MesWorkProdManager.cs
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,331 @@
using NewPdaSqlServer.DB;
using NewPdaSqlServer.Dto.service;
using NewPdaSqlServer.entity;
using NewPdaSqlServer.util;
using SqlSugar;
namespace NewPdaSqlServer.service.Wom;
public class MesWorkProdManager : Repository<MesWorkProd>
{
    //当前类已经继承了 Repository å¢žã€åˆ ã€æŸ¥ã€æ”¹çš„æ–¹æ³•
    /// <summary>
    /// PDA扫描生产报工
    /// </summary>
    public ScanWorkResult ScanWorkAsync(ScanWorkRequest request)
    {
        // æŸ¥è¯¢äººå‘˜ä¿¡æ¯
        var staff = Db.Queryable<MesStaff>()
            .Where(x => x.StaffNo == request.StaffNo)
            .First();
        if (staff == null)
            throw new Exception("请先选择人员");
        // æŸ¥è¯¢æ¡ç ä¿¡æ¯
        var barcode = Db.Queryable<MesInvItemBarcodes>()
            .Where(x => x.ItemBarcode == request.ItemBarcode)
            .First();
        if (barcode == null)
            throw new Exception($"无此条码,请核对!{request.ItemBarcode}");
        // æŸ¥è¯¢ç‰©æ–™ä¿¡æ¯
        var item = Db.Queryable<MesItems>()
            .Where(x => x.Id == barcode.ItemId)
            .First();
        if (item == null)
            throw new Exception($"无此物料,请核对!{request.ItemBarcode}");
        // ç¡®å®šå•据类型
        int billTypeId = 900;
        int transactionNo = 902;
        switch (barcode.Memo?.Trim() ?? "0")
        {
            case "丝印":
                transactionNo = 901;
                break;
            case "半成品":
                transactionNo = 902;
                break;
            case "包装":
            case "成品":
                transactionNo = 903;
                break;
        }
        // æ£€æŸ¥æ¡ç æ˜¯å¦é‡å¤æ‰«æ
        var exists = Db.Queryable<MesWorkProd, MesWorkProdCDetails>(
                (a, b) =>
                    new JoinQueryInfos(JoinType.Inner,
                        a.BillNo == b.BillNo))
            .Where((a, b) => b.ItemBarcode == request.ItemBarcode
                             && a.BillTypeId == billTypeId
                             && a.TransactionNo == transactionNo)
            .Any();
        if (exists)
            throw new Exception("条码重复扫描,请核对!");
        // èŽ·å–å·²æŠ¥å·¥æ•°é‡
        var reportedQty = Db.Queryable<MesWorkProd, MesWorkProdCDetails>(
                (a, b) =>
                    new JoinQueryInfos(JoinType.Inner,
                        a.BillNo == b.BillNo))
            .Where((a, b) => a.BillTypeId == billTypeId
                             && a.TransactionNo == transactionNo
                             && a.TaskNo == barcode.BillNo)
            .Sum((a, b) => b.Quantity);
        // èŽ·å–å·¥å•è®¡åˆ’æ•°é‡å’Œåž‹å·
        var workOrder = Db.Queryable<Womdaa>()
            .Where(x => x.Daa001 == barcode.BillNo)
            .First();
        if (workOrder == null)
            throw new Exception($"无工单明细,请核对!{request.ItemBarcode}");
        var planQty = workOrder.Daa008;
        var itemModel = workOrder.Daa004;
        UseTransaction(db =>
        {
            // æœ‰æ•°é‡æ¡ç è‡ªåŠ¨æŠ¥å·¥
            if (barcode.Quantity > 0)
            {
                var reportQty = barcode.Quantity;
                if (reportQty <= 0)
                    throw new Exception(
                        $"报工数量不能小于等于0,请核对!{request.ItemBarcode}");
                var totalQty = (reportedQty ?? 0) + reportQty;
                if (totalQty > workOrder.Daa008)
                    throw new Exception(
                        $"本次报工数量:{reportQty} å¤§äºŽå‰©ä½™æŠ¥å·¥æ•°é‡ï¼š{workOrder.Daa008 - reportedQty ?? 0},请核对!");
                // æ›´æ–°æ¡ç çŠ¶æ€
                db.Updateable<MesInvItemBarcodes>()
                    .SetColumns(x => new MesInvItemBarcodes
                    {
                        WorkFlg = true,
                        Quantity = reportQty
                    })
                    .Where(x => x.Guid == barcode.Guid)
                    .ExecuteCommandAsync();
                // èŽ·å–æˆ–åˆ›å»ºæŠ¥å·¥å•
                var workProd = db.Queryable<MesWorkProd>()
                    .Where(x => x.TaskNo == barcode.BillNo
                                && x.CreateDate.Value.Date.ToString(
                                    "yyyy-MM-dd") ==
                                DateTime.Now.Date.ToString("yyyy-MM-dd")
                                && x.BillTypeId == billTypeId
                                && x.TransactionNo == transactionNo
                                && x.Status == 0)
                    .First();
                if (workProd == null)
                {
                    var id = Guid.NewGuid();
                    var billNo = BillNo.GetBillNo("MES_WORK");
                    workProd = new MesWorkProd
                    {
                        Id = id,
                        BillNo = billNo,
                        LineNo = barcode.LineNo,
                        Company = barcode.Company,
                        Factory = barcode.Factory,
                        CreateBy = request.UserNo,
                        CreateDate = DateTime.Now,
                        LastupdateBy = request.UserNo,
                        LastupdateDate = DateTime.Now,
                        BillTypeId = billTypeId,
                        TransactionNo = transactionNo,
                        TaskNo = barcode.BillNo
                    };
                    db.Insertable(workProd).IgnoreColumns(true)
                        .ExecuteCommand();
                }
                // æ’入报工明细
                var detailId = Guid.NewGuid();
                db.Insertable(new MesWorkProdCDetails
                {
                    Id = detailId,
                    BillNo = workProd.BillNo,
                    ItemBarcode = request.ItemBarcode,
                    Quantity = (int)reportQty,
                    Company = barcode.Company,
                    Factory = barcode.Factory,
                    CreateBy = request.UserNo,
                    CreateDate = DateTime.Now,
                    LastupdateBy = request.UserNo,
                    LastupdateDate = DateTime.Now,
                    ItemNo = item.ItemNo,
                    WorkLast = barcode.WorkLast,
                    SilkPqty = barcode.SilkPqty,
                    SilkId = barcode.SilkId,
                    Silk = barcode.Silk,
                    BgYg = staff.Id
                }).IgnoreColumns(true).ExecuteCommand();
                // æ›´æ–°å·¥å•已报工数量
                db.Updateable<Womdaa>()
                    .SetColumns(x =>
                        x.Daa011 == (x.Daa011 ?? 0) + (int)barcode.Quantity
                    )
                    .Where(x => x.Daa001 == barcode.BillNo)
                    .ExecuteCommandAsync();
                // é‡æ–°èŽ·å–å·²æŠ¥å·¥æ•°é‡
                reportedQty = db.Queryable<MesWorkProd, MesWorkProdCDetails>(
                        (a, b) =>
                            new JoinQueryInfos(JoinType.Inner,
                                a.BillNo == b.BillNo))
                    .Where((a, b) => a.BillTypeId == billTypeId
                                     && a.TransactionNo == transactionNo
                                     && a.TaskNo == barcode.BillNo)
                    .Sum((a, b) => b.Quantity);
            }
            return 1;
        });
        return new ScanWorkResult
        {
            TaskNo = barcode.TaskNo,
            ItemNo = item.ItemNo,
            PlanQty = planQty ?? 0,
            ReportedQty = reportedQty ?? 0,
            CurrentQty = barcode.Quantity.Value,
            BarcodeQty = barcode.Quantity.Value,
            ItemName = item.ItemName,
            ItemModel = itemModel,
            Message = "扫码成功!"
        };
    }
    /// <summary>
    /// PDA扫描生产报工  prc_rf_pda_scan_work_prod
    /// </summary>
    public bool ScanWorkProdAsync(ScanWorkRequest request)
    {
        if (request.Quantity <= 0)
            throw new Exception("报工数量不能小于等于 0,请核对!");
        // æŸ¥è¯¢æ¡ç ä¿¡æ¯
        var barcode = Db.Queryable<MesInvItemBarcodes>()
            .Where(x => x.ItemBarcode == request.ItemBarcode)
            .First();
        if (barcode == null)
            throw new Exception($"库存中无此条码,请核对!{request.ItemBarcode}");
        // æŸ¥è¯¢å·¥å•信息
        var womdaa = Db.Queryable<Womdaa>()
            .Where(x => x.Daa001 == barcode.BillNo)
            .First();
        if (womdaa == null)
            throw new Exception($"条码不是报工条码/无对应工单,请核对!{request.ItemBarcode}");
        // ç¡®å®šå•据类型
        int billTypeId = 900;
        int transactionNo = 902;
        switch (barcode.Memo?.Trim() ?? "0")
        {
            case "丝印":
                transactionNo = 901;
                break;
            case "半成品":
                transactionNo = 902;
                break;
            case "成品":
            case "包装":
                transactionNo = 903;
                break;
        }
        // æ±‡æ€»å·²æ‰«æ¡ç æ•°é‡
        var sumQty = Db.Queryable<MesWorkProd, MesWorkProdCDetails>((a, b) =>
                new JoinQueryInfos(JoinType.Inner, a.BillNo == b.BillNo))
            .Where((a, b) => a.BillTypeId == billTypeId
                             && a.TransactionNo == transactionNo
                             && b.SilkId == barcode.SilkId
                             && a.TaskNo == barcode.BillNo)
            .Sum((a, b) => b.Quantity);
        sumQty = (sumQty ?? 0) + (int)request.Quantity;
        if (sumQty > womdaa.Daa008)
            throw new Exception(
                $"本次报工数量:{request.Quantity} å¤§äºŽå‰©ä½™æŠ¥å·¥æ•°é‡ï¼š{womdaa.Daa008 - (sumQty - request.Quantity)},请核对!");
        return UseTransaction(db =>
        {
            // æ›´æ–°æ¡ç ä¿¡æ¯
            db.Updateable<MesInvItemBarcodes>()
                .SetColumns(x => x.WorkFlg == true)
                .SetColumns(x => x.Quantity == request.Quantity)
                .Where(x => x.Guid == barcode.Guid)
                .ExecuteCommand();
            // èŽ·å–æˆ–åˆ›å»ºæŠ¥å·¥å•
            var workProd = db.Queryable<MesWorkProd>()
                .Where(x => x.TaskNo == barcode.BillNo
                            && x.CreateDate.Value.Date.ToString("yyyy-MM-dd") ==
                            DateTime.Now.Date.ToString("yyyy-MM-dd")
                            && x.BillTypeId == billTypeId
                            && x.TransactionNo == transactionNo
                            && x.Status == 0)
                .First();
            if (workProd == null)
            {
                var billNo = BillNo.GetBillNo("MES_WORK");
                workProd = new MesWorkProd
                {
                    Id = Guid.NewGuid(),
                    BillNo = billNo,
                    LineNo = barcode.LineNo,
                    Company = barcode.Company,
                    Factory = barcode.Factory,
                    CreateBy = request.UserNo,
                    CreateDate = DateTime.Now,
                    LastupdateBy = request.UserNo,
                    LastupdateDate = DateTime.Now,
                    PbillNo = barcode.BillNo, // Added PbillNo field
                    BillTypeId = billTypeId,
                    TransactionNo = transactionNo,
                    TaskNo = barcode.BillNo
                };
                db.Insertable(workProd).IgnoreColumns(true).ExecuteCommand();
            }
            // æ’入报工明细
            var detail = new MesWorkProdCDetails
            {
                Id = Guid.NewGuid(),
                BillNo = workProd.BillNo,
                ItemBarcode = request.ItemBarcode,
                Quantity = (int)request.Quantity,
                Company = barcode.Company,
                Factory = barcode.Factory,
                CreateBy = request.UserNo,
                CreateDate = DateTime.Now,
                LastupdateBy = request.UserNo,
                LastupdateDate = DateTime.Now,
                ItemNo = barcode.ItemNo,
                PbillNo = barcode.BillNo, // Added PbillNo from barcode
                WorkLast = barcode.WorkLast,
                SilkPqty = barcode.SilkPqty,
                SilkId = barcode.SilkId,
                Silk = barcode.Silk
            };
            db.Insertable(detail).IgnoreColumns(true).ExecuteCommand();
            return 1;
        }) > 0;
    }
}
service/base/MesStaffManager.cs
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,11 @@
using NewPdaSqlServer.DB;
using NewPdaSqlServer.entity;
namespace NewPdaSqlServer.service.@base;
public class MesStaffManager : Repository<MesStaff>
{
    //当前类已经继承了 Repository å¢žã€åˆ ã€æŸ¥ã€æ”¹çš„æ–¹æ³•
    //这里面写的代码不会给覆盖,如果要重新生成请删除 MesStaffManager.cs
}