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
{
///
/// 包装管理接口
///
public class PackagingManageController : ApiController
{
///
/// 获取指定包装信息
///
/// 项目ID
/// 人员ID
/// 包装ID
/// 包装信息
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;
}
///
/// 获取新包装编号
///
///
///
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;
}
///
/// 获取包装信息列表
///
/// 过滤条件
/// 每页数量
/// 页码(从1开始)
/// 包装信息分页列表
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;
}
///
/// 包装到场验收
///
/// 包装ID
/// 人员ID
/// 操作结果
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;
}
///
/// 保存包装信息(组件明细)
///
/// 包装ID
/// 组件ID集合
/// 操作结果
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;
}
///
/// 新增或更新包装信息(Id为空则新增,否则更新),返回创建或更新后的Id。
///
/// 包装信息实体
/// 创建或更新后的Id
[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;
}
///
/// 车次关联包装(设置包装的TrainNumberId)
///
/// 包装ID
/// 车次ID
/// 操作结果
[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;
}
}
}