zyf
2025-10-30 7a783a92137f59a02041d71dcdc8bca7e5a3a0b4
MESApplication/Controllers/QC/SJController.cs
@@ -1,10 +1,14 @@
using System.Dynamic;
using Masuit.Tools.Models;
using MES.Service.DB;
using MES.Service.Dto.service;
using MES.Service.Modes;
using MES.Service.Modes.DingAPI;
using MES.Service.service.QC;
using MES.Service.util;
using Microsoft.AspNetCore.Mvc;
using Newtonsoft.Json.Linq;
using SqlSugar.Extensions;
namespace MESApplication.Controllers.QC;
@@ -58,17 +62,99 @@
    }
    //SetQSItems
    [HttpPost("SetQSItems")]
    public ResponseResult SetQSItems([FromBody] JObject data)
    {
        var itemNo = data["itemNo"].ToString();
        var planName = data["planName"].ToString();
        try
        {
            dynamic resultInfos = new ExpandoObject();
            var tbBillList = new SJService();
            var detail021 = tbBillList.SetQSItems(itemNo);
            var detail021 = tbBillList.SetQSItems(itemNo, planName);
            resultInfos.tbBillList = detail021;
            return new ResponseResult
            {
                status = 0,
                message = "OK",
                data = resultInfos
            };
        }
        catch (Exception ex)
        {
            return ResponseResult.ResponseError(ex);
        }
    }
    [HttpPost("SavePlan")]
    public ResponseResult SavePlan([FromBody] JObject data)
    {
        decimal pid = Convert.ToDecimal(data["pid"]);
        string planName = data["planName"].ToString();
        try
        {
            dynamic resultInfos = new ExpandoObject();
            var SJ = new SJService();
            decimal res = SJ.SavePlan(pid, planName);
            resultInfos.res = res;
            return new ResponseResult
            {
                status = 0,
                message = "OK",
                data = resultInfos
            };
        }
        catch (Exception ex)
        {
            return ResponseResult.ResponseError(ex);
        }
    }
    [HttpPost("GetItemProj")]
    public ResponseResult GetItemProj([FromBody] JObject data)
    {
        var itemNo = data["itemNo"]?.ToString();
        try
        {
            var service = new SJService();
            var qaPlans = service.GetItemProj(itemNo);
            dynamic resultInfos = new ExpandoObject();
            resultInfos.qaPlans = qaPlans;  // 返回到前端
            return new ResponseResult
            {
                status = 0,
                message = "OK",
                data = resultInfos
            };
        }
        catch (Exception ex)
        {
            return ResponseResult.ResponseError(ex);
        }
    }
    [HttpPost("CreateNew")]
    public ResponseResult CreateNew([FromBody] JObject data)
    {
        var daaNo = data["daaNo"]?.ToString();
        var userNo = data["statusUser"]?.ToString();
        var planName = data["planName"]?.ToString();
        try
        {
            var service = new SJService();
            var (res, msg, billNo) = service.CreateNew(daaNo, userNo,planName);
            dynamic resultInfos = new ExpandoObject();
            resultInfos.res = res;
            resultInfos.msg = msg;
            resultInfos.billNo = billNo;// 返回到前端
            return new ResponseResult
            {
                status = 0,
@@ -153,6 +239,127 @@
            return ResponseResult.ResponseError(ex);
        }
    }
    /// <summary>
    /// 获取行不良原因
    /// </summary>
    /// <param name="data"></param>
    /// <returns></returns>
    [HttpPost("GetReason")]
    public ResponseResult GetReason([FromBody] JObject data)
    {
        string billNo = data["billNo"].ToString();
        try
        {
            dynamic resultInfos = new ExpandoObject();
            var tbBillList = new SJService();
            var reasons = tbBillList.GetReason(billNo);
            resultInfos.tbBillList = reasons;
            return new ResponseResult
            {
                status = 0,
                message = "OK",
                data = reasons
            };
        }
        catch (Exception ex)
        {
            return ResponseResult.ResponseError(ex);
        }
    }
    [HttpPost("GetDingDept")]
    public ResponseResult GetDingDept()
    {
        try
        {
            dynamic resultInfos = new ExpandoObject();
            var tbBillList = new SJService();
            var depts = tbBillList.getDingDept();
            resultInfos.tbBillList = depts;
            return new ResponseResult
            {
                status = 0,
                message = "OK",
                data = depts
            };
        }
        catch (Exception ex)
        {
            return ResponseResult.ResponseError(ex);
        }
    }
    [HttpPost("GetDeptTree")]
    public ResponseResult GetDeptTree()
    {
        try
        {
            var db = SqlSugarHelper.GetInstance();
            var flatList = db.Queryable<DingDept>().ToList();
            var tbBillList = new SJService();
            // 转换为树
            var tree = tbBillList.BuildDeptTree();
            return new ResponseResult
            {
                status = 0,
                message = "OK",
                data = tree
            };
        }
        catch (Exception ex)
        {
            return ResponseResult.ResponseError(ex);
        }
    }
    [HttpPost("GetDingUser")]
    public ResponseResult GetDingUser()
    {
        try
        {
            dynamic resultInfos = new ExpandoObject();
            var tbBillList = new SJService();
            var users = tbBillList.getDingUser();
            resultInfos.tbBillList = users;
            return new ResponseResult
            {
                status = 0,
                message = "OK",
                data = users
            };
        }
        catch (Exception ex)
        {
            return ResponseResult.ResponseError(ex);
        }
    }
    [HttpPost("DingJZCSD")]
    public ResponseResult DingJZCSD(JzcsdData Indata)
    {
        try
        {
            dynamic resultInfos = new ExpandoObject();
            var tbBillList = new SJService();
            var depts = tbBillList.DingJZCSD(Indata);
            resultInfos.tbBillList = depts;
            return new ResponseResult
            {
                status = 0,
                message = "OK",
                data = depts
            };
        }
        catch (Exception ex)
        {
            return ResponseResult.ResponseError(ex);
        }
    }
    [HttpPost("SetQSItemDetail")]
    public ResponseResult SetQSItemDetail([FromBody] QsItemIpiItemDetail detail)
@@ -272,6 +479,29 @@
            return ResponseResult.ResponseError(ex);
        }
    }
    //saveNotesPid
    [HttpPost("saveNotesPid")]
    public ResponseResult saveNotesPid([FromBody] QsItem rkjDto)
    {
        try
        {
            dynamic resultInfos = new ExpandoObject();
            var tbBillList =
                new SJService().saveNotesPid(rkjDto);
            resultInfos.tbBillList = tbBillList;
            return new ResponseResult
            {
                status = 0,
                message = "OK",
                data = resultInfos
            };
        }
        catch (Exception ex)
        {
            return ResponseResult.ResponseError(ex);
        }
    }
    //saveRemarksById
    [HttpPost("saveRemarksById")]
@@ -342,4 +572,45 @@
        }
    }
    /// <summary>
    /// 更新QsItemIpiItem的IsPass值
    /// </summary>
    /// <param name="data">包含id和isPass的JSON对象</param>
    /// <returns>更新结果</returns>
    [HttpPost("UpdateQsItemIpiItemIsPass")]
    public ResponseResult UpdateQsItemIpiItemIsPass([FromBody] JObject data)
    {
        try
        {
            var id = data["id"]?.ToString();
            var isPass = data["isPass"]?.ToString();
            if (string.IsNullOrEmpty(id) || string.IsNullOrEmpty(isPass))
            {
                return new ResponseResult
                {
                    status = 1,
                    message = "参数不能为空",
                    data = null
                };
            }
            dynamic resultInfos = new ExpandoObject();
            var sjService = new SJService();
            var result = sjService.UpdateQsItemIpiItemIsPass(Convert.ToDecimal(id), Convert.ToDecimal(isPass));
            resultInfos.tbBillList = result;
            return new ResponseResult
            {
                status = 0,
                message = "OK",
                data = resultInfos
            };
        }
        catch (Exception ex)
        {
            return ResponseResult.ResponseError(ex);
        }
    }
}