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
{
#region Methods
///
/// 删除包装与预制组件的关联
///
///
///
[HttpGet]
public Model.ResponeData DeletePipelineComponentFromPackaging(string pipelineComponentId)
{
var responeData = new Model.ResponeData();
try
{
HJGLPackagingmanageService.DeletePipelineComponentFromPackaging(pipelineComponentId);
}
catch (Exception ex)
{
responeData.code = 0;
responeData.message = ex.Message;
}
return responeData;
}
///
/// 获取指定包装信息
///
/// 项目ID
/// 人员ID
/// 包装ID
/// 包装信息
public Model.ResponeData GetPackagingInformationById(string projectId, string personId, string packagingManageId)
{
var responeData = new Model.ResponeData();
try
{
responeData.data = BLL.HJGLPackagingmanageService.GetPackagingInformationById(projectId, personId, packagingManageId);
}
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.HJGLPackagingmanageService.GetPackagingManageList(filter, pageindex, pagesize, out int totalCount);
responeData.data = new { totalCount, getDataList };
}
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.HJGLPackagingmanageService.GetNewPackagingCode(projectId);
}
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.HJGLPackagingmanageService.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.HJGLPackagingmanageService.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 = HJGLPackagingmanageService.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;
}
///
/// 添加包装与预制组件关联关系
///
///
///
///
[HttpGet]
public Model.ResponeData SavePipelineComponentToPackaging(string packagingManageId, string pipelineComponentId)
{
var responeData = new Model.ResponeData();
try
{
HJGLPackagingmanageService.AddPipelineComponentToPackaging(packagingManageId, pipelineComponentId);
}
catch (Exception ex)
{
responeData.code = 0;
responeData.message = ex.Message;
}
return responeData;
}
///
/// 获取包装分类列表
///
/// 包装分类字典
[HttpGet]
public Model.ResponeData GetPackagingCategories()
{
var responeData = new Model.ResponeData();
try
{
responeData.data = HJGLPackagingmanageService.CategoryIntMap;
}
catch (Exception ex)
{
responeData.code = 0;
responeData.message = ex.Message;
}
return responeData;
}
#endregion Methods
}
}