快乐的昕的电脑
2025-09-03 d4769b70611aeb95ebd26ba83a3851f693f88998
销售退货修改为存储过程
已修改2个文件
47 ■■■■ 文件已修改
Controllers/Warehouse/MesXsthController.cs 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
service/Warehouse/MesXsthManager.cs 41 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Controllers/Warehouse/MesXsthController.cs
@@ -12,7 +12,7 @@
/// </summary>
[Route("api/[controller]")]
[ApiController]
public class MesXsthController : ControllerBase
public class MesXsthController : BaseController
{
    private readonly MesXsthManager _manager = new();
@@ -176,7 +176,7 @@
        try
        {
            dynamic resultInfos = new ExpandoObject();
            resultInfos.tbBillList = _manager.GetXsthBillNo(query);
            resultInfos.tbBillList = _manager.GetXsthBillNo(query, RequestInfo);
            return new ResponseResult
            {
                status = 0,
@@ -202,7 +202,7 @@
        try
        {
            dynamic resultInfos = new ExpandoObject();
            resultInfos.tbBillList = _manager.GetMesItemDetailByBillNo(query);
            resultInfos.tbBillList = _manager.GetMesItemDetailByBillNo(query, RequestInfo);
            if (resultInfos.tbBillList.Count < 1)
            {
service/Warehouse/MesXsthManager.cs
@@ -19,13 +19,33 @@
    ///     获取销售退货申请列表
    /// </summary>
    /// <returns>销售退货申请列表</returns>
    public List<string> GetXsthBillNo(WarehouseQuery query)
    public dynamic GetXsthBillNo(WarehouseQuery query,dynamic RequestInfo)
    {
        var list = Db.Queryable<SalesReturnNotice>()
            .Where(s => s.CheckStatus == true)
            .Select(s => s.BillNo).ToList();
        var orgId = RequestInfo.OrgId;
        return list;
        if (orgId == null)
            throw new Exception("组织不存在!");
        // 获取未完成的退料单号列表
        var parameters = new[]
        {
        new SugarParameter("@pi_orgId", orgId),
        new SugarParameter("@inP1", null),
        new SugarParameter("@inP2", null),
        new SugarParameter("@inP3", null),
        new SugarParameter("@inP4", null)
        };
        try
        {
            // 返回单号字符串列表
            var blDetails = Db.Ado.SqlQuery<string>(
                "EXEC prc_pda_xsth_list @pi_orgId,@inP1,@inP2,@inP3,@inP4", parameters);
            return blDetails;
        }
        catch (Exception ex)
        {
            throw new Exception($"{ex.Message}");
        }
    }
    /// <summary>
@@ -33,7 +53,7 @@
    /// </summary>
    /// <param name="query">仓库查询参数</param>
    /// <returns>物料明细列表</returns>
    public dynamic GetMesItemDetailByBillNo(dynamic query)
    public dynamic GetMesItemDetailByBillNo(dynamic query, dynamic RequestInfo)
    {
        if (string.IsNullOrEmpty(query.billNo))
            throw new Exception("请选单据号!");
@@ -44,11 +64,16 @@
        if (string.IsNullOrEmpty(query.billNo?.ToString()))
            throw new ArgumentException("单据号不能为空", nameof(query.billNo));
        var orgId = RequestInfo.OrgId;
        if (orgId == null)
            throw new Exception("组织不存在!");
        // 获取未完成的销售退货明细
        var parameters = new[]
{
        new SugarParameter("@billNo", query.billNo),
        new SugarParameter("@pi_orgId",null),
        new SugarParameter("@pi_orgId",orgId),
        new SugarParameter("@inP1", null),
        new SugarParameter("@inP2", null),
        new SugarParameter("@inP3", null),
@@ -57,7 +82,7 @@
        try
        {
            List<dynamic>? blDetails = Db.Ado.SqlQuery<dynamic>(
                "EXEC Get_Mes_Item_Detail_By_BillNo @billNo,@inP1,@inP2,@inP3,@inP4", parameters);
                "EXEC prc_pda_xsth_detailList @billNo,@pi_orgId,@inP1,@inP2,@inP3,@inP4", parameters);
            var items = blDetails.Where(x => x.DSQty > 0).ToList();    // 待扫物料
            var ysitems = blDetails.Where(x => x.SQty > 0).ToList();   // 已扫物料
            return new