新增管道颜色标识导入功能及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,187 @@
using BLL;
using Model;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Net;
using System.Net.Http;
using System.Web.Http;
namespace WebAPI.Controllers
{
/// <summary>
/// 包装管理接口
/// </summary>
public class PackagingManageController : ApiController
{
/// <summary>
/// 获取指定包装信息
/// </summary>
/// <param name="projectId">项目ID</param>
/// <param name="personId">人员ID</param>
/// <param name="packagingManageId">包装ID</param>
/// <returns>包装信息</returns>
public Model.ResponeData GetPackagingInformationById(string projectId, string personId, string packagingManageId)
{
var responeData = new Model.ResponeData();
try
{
responeData.data = BLL.APIPackagingManageService.GetPackagingInformationById(projectId, personId, packagingManageId);
}
catch (Exception ex)
{
responeData.code = 0;
responeData.message = ex.Message;
}
return responeData;
}
/// <summary>
/// 获取新包装编号
/// </summary>
/// <param name="projectId"></param>
/// <returns></returns>
public Model.ResponeData GetPackagingNumberByProjectId(string projectId)
{
var responeData = new Model.ResponeData();
try
{
responeData.data = BLL.APIPackagingManageService.GetNewPackagingCode(projectId);
}
catch (Exception ex)
{
responeData.code = 0;
responeData.message = ex.Message;
}
return responeData;
}
/// <summary>
/// 获取包装信息列表
/// </summary>
/// <param name="filter">过滤条件</param>
/// <param name="pagesize">每页数量</param>
/// <param name="pageindex">页码(从1开始)</param>
/// <returns>包装信息分页列表</returns>
public Model.ResponeData GetPackagingInformationList([FromUri]PackagingManageInput filter, int pagesize, int pageindex)
{
var responeData = new Model.ResponeData();
try
{
var getDataList = BLL.APIPackagingManageService.GetPackagingManageList(filter, pageindex, pagesize, out int totalCount);
responeData.data = new { totalCount, getDataList };
}
catch (Exception ex)
{
responeData.code = 0;
responeData.message = ex.Message;
}
return responeData;
}
/// <summary>
/// 包装到场验收
/// </summary>
/// <param name="packagingManageId">包装ID</param>
/// <param name="PersonId">人员ID</param>
/// <returns>操作结果</returns>
public Model.ResponeData GetPackingInfoConfirmArrival(string packagingManageId, string PersonId)
{
var responeData = new Model.ResponeData();
try
{
BLL.APIPackagingManageService.GetPackingInfoConfirmArrival(packagingManageId, PersonId);
}
catch (Exception ex)
{
responeData.code = 0;
responeData.message = ex.Message;
}
return responeData;
}
/// <summary>
/// 保存包装信息(组件明细)
/// </summary>
/// <param name="packagingManageId">包装ID</param>
/// <param name="PipelineComponentIds">组件ID集合</param>
/// <returns>操作结果</returns>
public Model.ResponeData getSavePackagingInformationById(string packagingManageId, string PipelineComponentIds)
{
var responeData = new Model.ResponeData();
try
{
BLL.APIPackagingManageService.getSavePackagingInformationById(packagingManageId, PipelineComponentIds);
}
catch (Exception ex)
{
responeData.code = 0;
responeData.message = ex.Message;
}
return responeData;
}
/// <summary>
/// 新增或更新包装信息(Id为空则新增,否则更新),返回创建或更新后的Id。
/// </summary>
/// <param name="model">包装信息实体</param>
/// <returns>创建或更新后的Id</returns>
[HttpPost]
public Model.ResponeData SavePackaging(Model.HJGL_PackagingManage model)
{
var responeData = new Model.ResponeData();
try
{
var id = APIPackagingManageService.AddOrUpdatePackaging(model);
responeData.data = new { id };
}
catch (Exception ex)
{
responeData.code = 0;
responeData.message = ex.Message;
}
return responeData;
}
/// <summary>
/// 车次关联包装(设置包装的TrainNumberId
/// </summary>
/// <param name="packagingManageId">包装ID</param>
/// <param name="trainNumberId">车次ID</param>
/// <returns>操作结果</returns>
[HttpGet]
public Model.ResponeData SavePackingInformation(string packagingManageId, string trainNumberId)
{
var responeData = new Model.ResponeData();
try
{
var packModel = HJGLPackagingmanageService.GetHJGL_PackagingManageById(packagingManageId);
if (packModel == null)
{
responeData.code = 0;
responeData.message = "未找到对应的包装信息";
return responeData;
}
if (packModel.State != 0)
{
responeData.code = 0;
responeData.message = "当前包装状态不可修改车次号";
return responeData;
}
packModel.TrainNumberId = trainNumberId;
HJGLPackagingmanageService.UpdateHJGL_PackagingManage(packModel);
}
catch (Exception ex)
{
responeData.code = 0;
responeData.message = ex.Message;
}
return responeData;
}
}
}