新增管道颜色标识导入功能及API控制器

更新了多个服务和页面,增加了导入管道颜色标识数据的功能,并实现了包装管理、车次管理、管道组件和焊口信息的API控制器。修正了文件路径错误,优化了分页和排序逻辑,删除了不再使用的API方法。
This commit is contained in:
2025-10-24 10:04:03 +08:00
parent 55b798135c
commit c23d113eae
55 changed files with 1502 additions and 817 deletions
@@ -0,0 +1,265 @@
using BLL;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web.Http;
namespace WebAPI.Controllers
{
/// <summary>
///
/// </summary>
public class PipeJointController : ApiController
{
/// <summary>
/// 根据单位工程获取管线列表
/// </summary>
/// <param name="unitWrokId"></param>
/// <returns></returns>
public Model.ResponeData getPipelineListByUnitWrokId(string unitWrokId)
{
var responeData = new Model.ResponeData();
try
{
responeData.data = APIPipeJointService.getPipelineList(unitWrokId);
}
catch (Exception ex)
{
responeData.code = 0;
responeData.message = ex.Message;
}
return responeData;
}
/// <summary>
/// 根据管线号查找pipelinid
/// </summary>
/// <param name="pipelineCode"></param>
/// <param name="projectid"></param>
/// <param name="pageindex"></param>
/// <param name="pageSize"></param>
/// <returns></returns>
public Model.ResponeData GetPipelineidListByCode(string pipelineCode, string projectid,int pageindex, int pageSize)
{
var responeData = new Model.ResponeData();
try
{
var pipelineidList = APIPipeJointService.GetPipelineidListByCode(pipelineCode,projectid);
int pageCount = pipelineidList.Count;
if (pageCount > 0 && pageindex > 0 && pageSize > 0)
{
pipelineidList = pipelineidList.Skip(pageSize * (pageindex - 1)).Take(pageSize).ToList();
}
responeData.data = new { pageCount, pipelineidList };
}
catch (Exception ex)
{
responeData.code = 0;
responeData.message = ex.Message;
}
return responeData;
}
/// <summary>
/// 根据管线ID获取未焊接的焊口信息
/// </summary>
/// <param name="pipeLineId"></param>
/// <returns></returns>
public Model.ResponeData getWeldJointListByPipeLineId(string pipeLineId)
{
var responeData = new Model.ResponeData();
try
{
responeData.data = APIPipeJointService.GetWeldJointList(pipeLineId);
}
catch (Exception ex)
{
responeData.code = 0;
responeData.message = ex.Message;
}
return responeData;
}
/// <summary>
/// 根据管线ID获取所有的焊口列表
/// </summary>
/// <param name="pipeLineId"></param>
/// <returns></returns>
public Model.ResponeData GetAllWeldJointList(string pipeLineId)
{
var responeData = new Model.ResponeData();
try
{
responeData.data = APIPipeJointService.GetAllWeldJointList(pipeLineId);
}
catch (Exception ex)
{
responeData.code = 0;
responeData.message = ex.Message;
}
return responeData;
}
/// <summary>
/// 获取焊工列表
/// </summary>
/// <param name="unitWorkId"></param>
/// <returns></returns>
public Model.ResponeData getWelderListByUnitWorkId(string unitWorkId, string weldJointId)
{
var responeData = new Model.ResponeData();
try
{
responeData.data = APIPipeJointService.getWelderList(unitWorkId, weldJointId);
}
catch (Exception ex)
{
responeData.code = 0;
responeData.message = ex.Message;
}
return responeData;
}
/// <summary>
/// 根据焊口ID获取焊口信息
/// </summary>
/// <param name="weldJointId"></param>
/// <returns></returns>
public Model.ResponeData getWeldJointInfoById(string weldJointId)
{
var responeData = new Model.ResponeData();
try
{
responeData.data = APIPipeJointService.getWeldJointInfo(weldJointId);
}
catch (Exception ex)
{
responeData.code = 0;
responeData.message = ex.Message;
}
return responeData;
}
#region
/// <summary>
/// 根据焊口标识获取焊口详细信息
/// </summary>
/// <param name="weldJointIdentify"></param>
/// <returns></returns>
public Model.ResponeData getWeldJointByIdentify(string weldJointIdentify)
{
var responeData = new Model.ResponeData();
try
{
responeData.data = APIPipeJointService.getWeldJointByIdentify(weldJointIdentify);
}
catch (Exception ex)
{
responeData.code = 0;
responeData.message = ex.Message;
}
return responeData;
}
/// <summary>
/// 根据焊口ID获取焊口详细信息
/// </summary>
/// <param name="WeldJointId"></param>
/// <returns></returns>
public Model.ResponeData getWeldJointByWeldJointId(string WeldJointId)
{
var responeData = new Model.ResponeData();
try
{
responeData.data = APIPipeJointService.GetHJGL_WeldJoint(WeldJointId);
}
catch (Exception ex)
{
responeData.code = 0;
responeData.message = ex.Message;
}
return responeData;
}
#endregion
#region 线
/// <summary>
/// 保存管线焊口信息
/// </summary>
/// <param name="addItem">管线焊口项</param>
/// <returns></returns>
[HttpPost]
public Model.ResponeData PostSavePipeWeldJoint([FromBody] Model.WeldJointItem addItem)
{
var responeData = new Model.ResponeData();
try
{
APIPipeJointService.SavePipeWeldJoint(addItem);
}
catch (Exception ex)
{
responeData.code = 0;
responeData.message = ex.Message;
}
return responeData;
}
#endregion
#region 线
/// <summary>
/// 批量保存管线焊口信息
/// </summary>
/// <param name="addItems">管线焊口项</param>
/// <returns></returns>
[HttpPost]
public Model.ResponeData PostSavePipeWeldJointList([FromBody] List<Model.WeldJointItem> addItems)
{
var responeData = new Model.ResponeData();
try
{
APIPipeJointService.SavePipeWeldJointList(addItems);
}
catch (Exception ex)
{
responeData.code = 0;
responeData.message = ex.Message;
}
return responeData;
}
#endregion
#region
/// <summary>
/// 保存预焊接日报
/// </summary>
/// <param name="addItem"></param>
/// <returns></returns>
[HttpPost]
public Model.ResponeData PostSavePreWeldingDaily([FromBody] Model.WeldJointItem addItem)
{
var responeData = new Model.ResponeData();
try
{
APIPipeJointService.SavePreWeldingDaily(addItem);
}
catch (Exception ex)
{
responeData.code = 0;
responeData.message = ex.Message;
}
return responeData;
}
#endregion
}
}
@@ -0,0 +1,222 @@
using BLL;
using Model;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web.Http;
namespace WebAPI.Controllers
{
/// <summary>
/// 焊接日报
/// </summary>
public class PreWeldingDailyController : ApiController
{
#region
/// <summary>
/// 根据主键获取详细
/// </summary>
/// <param name="preWeldingDailyId"></param>
/// <returns></returns>
public Model.ResponeData getWeldingDailyInfo(string weldingDailyId, string unitWorkId)
{
var responeData = new Model.ResponeData();
try
{
responeData.data = APIPreWeldingDailyService.getWeldingDailyInfo(weldingDailyId, unitWorkId);
}
catch (Exception ex)
{
responeData.code = 0;
responeData.message = ex.Message;
}
return responeData;
}
#endregion
#region -
/// <summary>
/// 列表-查询
/// </summary>
/// <param name="projectId"></param>
/// <param name="pageIndex"></param>
/// <returns></returns>
public Model.ResponeData getPreWeldingDailyList(string projectId, int pageIndex)
{
var responeData = new Model.ResponeData();
try
{
var getDataList = APIPreWeldingDailyService.getPreWeldingDailyList(projectId);
int pageCount = getDataList.Count();
if (pageCount > 0 && pageIndex > 0)
{
getDataList = getDataList.Skip(Funs.PageSize * (pageIndex - 1)).Take(Funs.PageSize).ToList();
}
responeData.data = new { pageCount, getDataList };
}
catch (Exception ex)
{
responeData.code = 0;
responeData.message = ex.Message;
}
return responeData;
}
#endregion
#region Id获取日报记录
/// <summary>
/// 根据日期、单位工程Id获取日报记录
/// </summary>
/// <param name="date">日期</param>
/// <param name="unitWorkId">单位工程Id</param>
/// <returns></returns>
public Model.ResponeData GetWeldingDailyList(string date, string unitWorkId)
{
var responeData = new Model.ResponeData();
try
{
responeData.data = APIPreWeldingDailyService.GetWeldingDailyList(date, unitWorkId);
}
catch (Exception ex)
{
responeData.code = 0;
responeData.message = ex.Message;
}
return responeData;
}
#endregion
#region
/// <summary>
/// 获取日报明细记录
/// </summary>
/// <param name="weldingDailyId">日报id</param>
/// <param name="unitWorkId">单位工程id</param>
/// <param name="date">焊接日期</param>
/// <param name="projectId">项目id</param>
/// <returns></returns>
[HttpGet]
public ResponseData<List<View_HJGL_WeldingTask>> GetWeldingTasks(string weldingDailyId, string unitWorkId, string date, string projectId)
{
ResponseData<List<View_HJGL_WeldingTask>> res = new ResponseData<List<View_HJGL_WeldingTask>>();
res.successful = true;
res.resultValue = BLL.APIPreWeldingDailyService.GetWeldingTasks(weldingDailyId, unitWorkId, date, projectId);
return res;
}
#endregion
#region
/// <summary>
/// 保存WeldingDaily
/// </summary>
/// <param name="newItem">施工方案</param>
/// <returns></returns>
[HttpPost]
public Model.ResponseData<string> SaveWeldingDaily([FromBody] Model.HJGL_WeldingDaily newItem)
{
ResponseData<string> res = new ResponseData<string>();
try
{
if (string.IsNullOrEmpty(newItem.WeldingDailyId))
{
newItem.WeldingDailyId = Guid.NewGuid().ToString();
APIPreWeldingDailyService.SaveWeldingDaily(newItem);
res.resultValue = newItem.WeldingDailyId;
}
else
{
APIPreWeldingDailyService.SaveWeldingDaily(newItem);
res.resultValue = newItem.WeldingDailyId;
}
APIPreWeldingDailyService.SaveWeldingDaily(newItem);
}
catch (Exception ex)
{
res.successful = false;
}
res.successful = true;
return res;
}
/// <summary>
/// 根据焊口id保存到日报
/// </summary>
/// <param name="WeldJointId"></param>
/// <param name="Personid"></param>
/// <param name="time"></param>
/// <returns></returns>
[HttpGet]
public Model.ResponeData SaveWeldingDailyByWeldJointId(string WeldJointId,string Personid,string time)
{
var responeData = new Model.ResponeData();
try
{
string res= APIPreWeldingDailyService.SaveWeldingDailyByWeldJointId(WeldJointId, Personid,time );
if (!string.IsNullOrEmpty(res))
{
responeData.code = 0;
responeData.message = res;
}
}
catch (Exception ex)
{
responeData.code = 0;
responeData.message = ex.Message;
}
return responeData;
}
#endregion
#region
/// <summary>
/// 更新焊接日报焊口信息
/// </summary>
/// <param name="newItem">日报明细项</param>
/// <returns></returns>
[HttpPost]
public Model.ResponeData SaveWeldingDailyDetail([FromBody] Model.WeldingDailyItem newItem)
{
var responeData = new Model.ResponeData();
try
{
APIPreWeldingDailyService.SaveWeldingDailyDetail(newItem.WeldingDailyId, newItem.SelectIds, newItem.NotSelectIds, newItem.ProjectId);
}
catch (Exception ex)
{
responeData.code = 0;
responeData.message = ex.Message;
}
return responeData;
}
#endregion
#region
/// <summary>
/// 保存PreWeldingDaily
/// </summary>
/// <param name="newItem">施工方案</param>
/// <returns></returns>
[HttpPost]
public Model.ResponeData SavePreWeldingDaily([FromBody] Model.HJGL_PreWeldingDailyItem newItem)
{
var responeData = new Model.ResponeData();
try
{
APIPreWeldingDailyService.SavePreWeldingDaily(newItem);
}
catch (Exception ex)
{
responeData.code = 0;
responeData.message = ex.Message;
}
return responeData;
}
#endregion
}
}
@@ -0,0 +1,184 @@
using BLL;
using System;
using System.Web.Http;
namespace WebAPI.Controllers
{
/// <summary>
/// 报表查询统计
/// </summary>
public class ReportQueryController : ApiController
{
#region
/// <summary>
/// 根据人员二维码获取焊工业绩
/// </summary>
/// <param name="personId"></param>
/// <returns></returns>
public Model.ResponeData GetWelderPerformanceByQRC(string personId)
{
var responeData = new Model.ResponeData();
try
{
responeData.data = APIReportQueryService.GetWelderPerformanceByQRC(personId);
}
catch (Exception ex)
{
responeData.code = 0;
responeData.message = ex.Message;
}
return responeData;
}
#endregion
#region
/// <summary>
/// 根据焊工号获取焊工业绩
/// </summary>
/// <param name="projectId"></param>
/// <param name="welderCode"></param>
/// <returns></returns>
public Model.ResponeData GetWelderPerformanceByWelderCode(string projectId, string welderCode)
{
var responeData = new Model.ResponeData();
try
{
responeData.data = APIReportQueryService.GetWelderPerformanceByWelderCode(projectId, welderCode);
}
catch (Exception ex)
{
responeData.code = 0;
responeData.message = ex.Message;
}
return responeData;
}
#endregion
#region ID获取焊工合格项目
/// <summary>
/// 根据人员ID获取焊工合格项目
/// </summary>
/// <param name="personId"></param>
/// <returns></returns>
public Model.ResponeData GetWelderQualify(string personId)
{
var responeData = new Model.ResponeData();
try
{
responeData.data = APIReportQueryService.getWelderQualify(personId);
}
catch (Exception ex)
{
responeData.code = 0;
responeData.message = ex.Message;
}
return responeData;
}
#endregion
#region
/// <summary>
/// 焊工资质预警
/// </summary>
/// <param name="projectId"></param>
/// <returns></returns>
public Model.ResponeData GetWelderQualifyWarning(string projectId)
{
var responeData = new Model.ResponeData();
try
{
responeData.data = APIReportQueryService.GetWelderQualifyWarning(projectId);
}
catch (Exception ex)
{
responeData.code = 0;
responeData.message = ex.Message;
}
return responeData;
}
#endregion
#region 96%
/// <summary>
/// 焊工一次合格率低于96%预警
/// </summary>
/// <param name="projectId"></param>
/// <returns></returns>
public Model.ResponeData GetWelderOnePassRateWarning(string projectId)
{
var responeData = new Model.ResponeData();
try
{
responeData.data = APIReportQueryService.GetWelderOnePassRateWarning(projectId);
}
catch (Exception ex)
{
responeData.code = 0;
responeData.message = ex.Message;
}
return responeData;
}
#endregion
#region ID获取焊口信息和焊接信息
/// <summary>
/// 根据焊口ID获取焊口信息和焊接信息
/// </summary>
/// <param name="weldJointId"></param>
/// <returns></returns>
public Model.ResponeData GetJointCompreInfo(string weldJointId)
{
var responeData = new Model.ResponeData();
try
{
responeData.data = APIReportQueryService.GetJointCompreInfo(weldJointId);
}
catch (Exception ex)
{
responeData.code = 0;
responeData.message = ex.Message;
}
return responeData;
}
#endregion
#region
/// <summary>
/// 多维度查询报表
/// </summary>
/// <param name="projectId"></param>
/// <param name="unitId"></param>
/// <param name="unitWorkId"></param>
/// <param name="pipeLineId"></param>
/// <param name="material"></param>
/// <param name="startTime"></param>
/// <param name="endTime"></param>
/// <returns></returns>
public Model.ResponeData GetReportQueryByRequir(string projectId, string unitId, string unitWorkId, string pipeLineId, string material, string startTime, string endTime)
{
var responeData = new Model.ResponeData();
try
{
responeData.data = APIReportQueryService.GetReportQueryByRequir(projectId, unitId, unitWorkId, pipeLineId, material, startTime, endTime);
}
catch (Exception ex)
{
responeData.code = 0;
responeData.message = ex.Message;
}
return responeData;
}
#endregion
}
}