Files
SGGL_SHJ/SGGL/WebAPI/Controllers/HJGL/PreDesign/PackagingManageController.cs
T
lpf c23d113eae 新增管道颜色标识导入功能及API控制器
更新了多个服务和页面,增加了导入管道颜色标识数据的功能,并实现了包装管理、车次管理、管道组件和焊口信息的API控制器。修正了文件路径错误,优化了分页和排序逻辑,删除了不再使用的API方法。
2025-10-24 10:04:03 +08:00

187 lines
6.4 KiB
C#
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
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;
}
}
}