using HH.Redis.ReisModel;
using HH.WMS.BLL;
using HH.WMS.BLL.Basic;
using HH.WMS.Common;
using HH.WMS.Entitys;
using HH.WMS.Entitys.Basic;
using HH.WMS.Entitys.Common;
using HH.WMS.WebApi.Areas.Common.Controllers;
using Newtonsoft.Json;
using Newtonsoft.Json.Converters;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Http;
namespace HH.WMS.WebApi.Areas.Basic
{
public class TrayController : BaseController
{
#region 查询托盘
///
/// 查询托盘
///
/// 页码
/// 页显示条数
///
/// [Hanhe(DBS)] CREATED BY 2018-12-03
[HttpPost]
public OperateResult GetList(SearchModel searchModel)
{
return ValidateToken(searchModel.TokenId,m =>
{
OperateResult result;
try
{
result = BLLCreator.Create>().GetPagingResult(searchModel.PageIndex, searchModel.PageSize,
new
{
CN_S_TRAY_CODE = Util.ToString(searchModel.SearchCondition.CN_S_TRAY_CODE),
CN_S_TRAY_TYPE = Util.ToString(searchModel.SearchCondition.CN_S_TRAY_TYPE)
}
, " order by CN_T_CREATE desc ");
return result;
}
catch (Exception ex)
{
return OperateResult.Error(ex.Message);
}
});
}
#endregion
#region 根据托盘号批量删除
///
/// 根据托盘号批量删除
///
/// tokenId
/// 多个托盘号用逗号隔开
///
/// [Hanhe(DBS)] created by 2018/12/06
[HttpGet]
public OperateResult Delete(string trays)
{
return ValidateToken(m =>
{
try
{
return BLLCreator.Create().Delete(trays);
}
catch (Exception ex)
{
return OperateResult.Error(ex.Message);
}
});
}
#endregion
#region 更新托盘信息
///
/// 更新托盘信息
///
/// 托盘实体
///
/// [Hanhe(DBS)] created by 2018/12/06
[HttpPost]
public OperateResult Edit(TN_WM_B_TRAY_INFOEntity model)
{
return ValidateToken(model.TokenId,m =>
{
return ValidateToken(model.TokenId, t =>
{
if (model.SpecBatchUpdate)
{
return BLLCreator.Create>(t).Update(new
{
CN_N_COLUMN_NUM = model.CN_N_COLUMN_NUM,
CN_N_ROW_NUM = model.CN_N_ROW_NUM,
//CN_F_LOADBEARING = model.CN_F_LOADBEARING,
CN_F_GROSSWEIGHT = model.CN_F_GROSSWEIGHT,
CN_S_MODIFY = model.CN_S_MODIFY,
CN_S_MODIFY_BY = model.CN_S_MODIFY_BY,
CN_N_GOODUPLINE = model.CN_N_GOODUPLINE,
CN_T_MODIFY = model.CN_T_MODIFY
}, new { CN_S_SPEC = model.CN_S_SPEC });
}
else
{
return BLLCreator.Create>(t).Update(new
{
CN_N_COLUMN_NUM = model.CN_N_COLUMN_NUM,
CN_N_ROW_NUM = model.CN_N_ROW_NUM,
CN_S_SPEC = model.CN_S_SPEC,
//CN_F_LOADBEARING = model.CN_F_LOADBEARING,
CN_F_GROSSWEIGHT = model.CN_F_GROSSWEIGHT,
CN_S_MODIFY = model.CN_S_MODIFY,
CN_S_MODIFY_BY = model.CN_S_MODIFY_BY,
CN_N_GOODUPLINE = model.CN_N_GOODUPLINE,
CN_T_MODIFY = model.CN_T_MODIFY
}, new { CN_S_TRAY_CODE = model.CN_S_TRAY_CODE });
}
});
});
}
#endregion
#region 新增容器信息
///
/// 新增容器信息
///
/// 批量新增实体
///
/// [Hanhe(DBS)] CREATED BY 2018-12-03
[HttpPost]
public OperateResult Add(TN_WM_B_TRAY_INFOEntity model)
{
return ValidateToken(model.TokenId, m =>
{
OperateResult result;
try
{
List list = new List();
if (!string.IsNullOrEmpty(model.CN_S_TRAY_CODE))
{
//增加指定的容器
list.Add(model);
}
else
{
for (int i = 0; i < model.Qty; i++)
{
//增加指定的容器
result = GetCode(m, model.CN_S_TRAY_TYPE);
if (result.Status == ResultStatus.Error)
return result;
TN_WM_B_TRAY_INFOEntity modelClone = (TN_WM_B_TRAY_INFOEntity)model.Clone();
modelClone.CN_S_TRAY_CODE = result.Data.ToString();
list.Add(modelClone);
}
}
return BLLCreator.Create().AddRange(list);
}
catch (Exception ex)
{
return OperateResult.Error(ex.Message);
}
});
}
#endregion
#region 获取容器实体
///
/// 获取容器实体
///
/// tokenId
/// 托盘号
///
/// [Hanhe(DBS)] CREATED BY 2018-12-03
[HttpGet]
public OperateResult GetModel(string trayCode)
{
return ValidateToken(m =>
{
TN_WM_B_TRAY_INFOEntity entity = BLLCreator.Create>().GetSingleEntity(new { CN_S_TRAY_CODE = trayCode });
if (entity != null)
return OperateResult.Succeed("", entity);
else
return OperateResult.Error("无效的托盘号!");
});
}
#endregion
[HttpGet]
public string GetTrayList()
{
return ValidateToken(m =>
{
try
{
List trayList = BLLCreator.Create>().GetList();
return JsonConvert.SerializeObject(trayList);
}
catch (Exception ex)
{
return "";
}
});
}
}
}