feat(hjgl): 完善焊接任务与质量管理流程

This commit is contained in:
2026-08-19 17:13:33 +08:00
parent 08792e0dc8
commit 679e9f6cec
68 changed files with 2481 additions and 1170 deletions
@@ -269,6 +269,27 @@ namespace WebAPI.Controllers
return responeData;
}
/// <summary>
/// 按类型获取焊接耗材。
/// </summary>
/// <param name="consumablesType">焊材类型:1焊丝,2焊条</param>
/// <returns>焊接耗材列表</returns>
public Model.ResponeData GetWeldingConsumables(string consumablesType)
{
var responeData = new Model.ResponeData();
try
{
responeData.data = BLL.APIBaseInfoService.GetWeldingConsumables(consumablesType);
}
catch (Exception ex)
{
responeData.code = 0;
responeData.message = ex.Message;
}
return responeData;
}
/// <summary>
/// 获取探伤类型
/// </summary>
@@ -1369,5 +1390,29 @@ namespace WebAPI.Controllers
return responeData;
}
#endregion
/// <summary>
/// 分页查询入库条码明细。
/// </summary>
[HttpGet]
public Model.ResponeData GetInputDetailBarCodes(string barCodeKeyword, int pageIndex = 1, int pageSize = 20)
{
var responeData = new Model.ResponeData();
try
{
pageIndex = pageIndex < 1 ? 1 : pageIndex;
pageSize = pageSize < 1 ? 20 : Math.Min(pageSize, 200);
var result = APIBaseInfoService.GetInputDetailBarCodes(barCodeKeyword, pageIndex, pageSize);
int totalCount = result.Item2;
int pageCount = totalCount == 0 ? 0 : (int)Math.Ceiling(totalCount / (double)pageSize);
responeData.data = new { pageCount, totalCount, getDataList = result.Item1 };
}
catch (Exception ex)
{
responeData.code = 0;
responeData.message = ex.Message;
}
return responeData;
}
}
}
@@ -10,8 +10,10 @@ namespace WebAPI.Controllers.HJGL.WeldingManage
public class AntiCorrosionCheckController : ApiController
{
/// <summary>
/// 根据材料编码获取当前材料的所有除锈防腐记录。
/// 根据入库条码获取材料信息及当前材料的所有除锈防腐记录。
/// </summary>
/// <param name="materialCode">入库明细条码,保留原参数名兼容现有客户端。</param>
/// <param name="projectId">项目ID。</param>
public Model.ResponeData GetRecordsByMaterialCode(string materialCode, string projectId)
{
var responeData = new Model.ResponeData();
@@ -103,6 +103,32 @@ namespace WebAPI.Controllers
return responeData;
}
/// <summary>
/// 分页查询当前项目的全部焊口。
/// </summary>
/// <param name="projectId">项目ID</param>
/// <param name="pipelineCode">管线号查询条件</param>
/// <param name="weldJointCode">焊口号查询条件</param>
/// <param name="pageIndex">页码,从0开始</param>
/// <param name="pageSize">每页记录数</param>
/// <returns>焊口列表</returns>
public Model.ResponeData GetWeldedJoints(string projectId, string pipelineCode = "", string weldJointCode = "", int pageIndex = 0, int pageSize = 20)
{
var responeData = new Model.ResponeData();
try
{
responeData.data = APIPipeJointService.GetAllWeldJoints(
projectId, pipelineCode, weldJointCode, pageIndex, pageSize);
}
catch (Exception ex)
{
responeData.code = 0;
responeData.message = ex.Message;
}
return responeData;
}
/// <summary>
/// 获取焊工列表
/// </summary>
@@ -262,4 +288,4 @@ namespace WebAPI.Controllers
#endregion
}
}
}
@@ -380,7 +380,40 @@ namespace WebAPI.Controllers
}
/// <summary>
/// 批量审核通过焊接日报待审核明细
/// 批量完成班组审核。
/// </summary>
[HttpPost]
public Model.ResponeData TeamAuditPendingWeldingDailyTempDetails(
[FromBody] Model.WeldingDailyTempDetailBatchRequest request)
{
var responeData = new Model.ResponeData();
try
{
if (request == null)
{
responeData.code = 0;
responeData.message = "参数不能为空";
return responeData;
}
string errlog = APIWeldReportService.TeamAuditPendingWeldingDailyTempDetails(
request.TempDetailIds, request.AuditMan);
if (!string.IsNullOrEmpty(errlog))
{
responeData.code = 0;
responeData.message = errlog;
}
}
catch (Exception ex)
{
responeData.code = 0;
responeData.message = ex.Message;
}
return responeData;
}
/// <summary>
/// 批量完成专工审核;未完成班组审核的记录不能处理。
/// </summary>
/// <param name="request">批量审核参数</param>
/// <returns>批量处理结果</returns>
@@ -0,0 +1,58 @@
using BLL;
using System;
using System.Web.Http;
namespace WebAPI.Controllers.HJGL.WeldingManage
{
public class WeldTaskController : ApiController
{
[HttpGet]
public Model.ResponeData GetTaskListByTeamGroup(string projectId, string teamGroupId = null, string unitWorkId = null)
{
var response = new Model.ResponeData();
try
{
response.data = WeldTaskService.GetTaskListByTeamGroup(projectId, teamGroupId, unitWorkId);
}
catch (Exception ex)
{
response.code = 0;
response.message = ex.Message;
}
return response;
}
[HttpGet]
public Model.ResponeData GetTaskDetail(string projectId, string taskCode)
{
var response = new Model.ResponeData();
try
{
response.data = WeldTaskService.GetTaskDetail(projectId, taskCode);
}
catch (Exception ex)
{
response.code = 0;
response.message = ex.Message;
}
return response;
}
[HttpPost]
public Model.ResponeData GenerateOutPlan([FromBody] Model.WeldTaskGenerateRequest request)
{
var response = new Model.ResponeData();
try
{
if (request == null) throw new ArgumentNullException("request");
WeldTaskService.GenerateOutPlanByTaskCode(request.ProjectId, request.TaskCode, request.PersonId);
}
catch (Exception ex)
{
response.code = 0;
response.message = ex.Message;
}
return response;
}
}
}