using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace BLL
{
public class APITrainNumberManagerService
{
///
/// 车次发货验收
///
///
///
public static void SaveTrainInfoConfirmArrival(string id, string PersonId)
{
var model=TrainNumberManageService.GetModelById(id);
if (model!=null)
{
model.ReceiveDate = DateTime.Now;
TrainNumberManageService.Update(model);
}
var packManagerList= HJGLPackagingmanageService.GetPackagingManage(id);
foreach (var item in packManagerList)
{
BLL.APIPackagingManageService.GetPackingInfoConfirmArrival(item.PackagingManageId, PersonId);
}
}
///
/// 获取指定车次的包装明细(包装表)
///
public static List GetPackagingByTrainId(string trainNumberId)
{
return HJGLPackagingmanageService.GetPackagingManage(trainNumberId);
}
///
/// 将包装关联到车次(设置 HJGL_PackagingManage.TrainNumberId)
///
public static void AddPackagingToTrain(string packagingManageId, string trainNumberId)
{
var packModel = HJGLPackagingmanageService.GetHJGL_PackagingManageById(packagingManageId);
if (packModel == null)
{
throw new Exception("未找到对应的包装信息");
}
// 仅允许状态为未出库(state_0)时修改车次号,保持与前端逻辑一致
if (packModel.State != HJGLPackagingmanageService.state_0)
{
throw new Exception("当前包装状态不可修改车次号");
}
packModel.TrainNumberId = trainNumberId;
HJGLPackagingmanageService.UpdateHJGL_PackagingManage(packModel);
}
///
/// 取消包装与车次的关联(清空 HJGL_PackagingManage.TrainNumberId)
///
public static void RemovePackagingFromTrain(string packagingManageId)
{
var packModel = HJGLPackagingmanageService.GetHJGL_PackagingManageById(packagingManageId);
if (packModel == null)
{
throw new Exception("未找到对应的包装信息");
}
if (packModel.State != HJGLPackagingmanageService.state_0)
{
throw new Exception("当前包装状态不可修改车次号");
}
packModel.TrainNumberId = null;
packModel.TrainNumber = null;
HJGLPackagingmanageService.UpdateHJGL_PackagingManage(packModel);
}
}
}