using HH.WMS.BLL;
using HH.WMS.Common;
using HH.WMS.Entitys;
using HH.WMS.Entitys.Algorithm;
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.Data;
using System.Linq;
using System.Net;
using System.Net.Http;
using System.Web.Http;
namespace HH.WMS.WebApi.Areas.OutStock.Controllers
{
public class HKSortingController : BaseController
{
#region 分拣单列表
///
/// 分拣单列表
///
///
///
[HttpPost]
public string GetSortingList(SearchModel searchModel)
{
OperateResult result = new OperateResult();
try
{
long total = 0;
DataTable dt = BLLCreator.Create>().GetPagingData(new List() {
new SearchWhere(){ key="CN_S_SORTING_NO", sign= WhereSign.Like, value=Util.ToString(searchModel.SearchCondition.SortingNo)}
}, searchModel.PageIndex, searchModel.PageSize, out total, true, new
{
CN_S_SORTING_NO = "%" + Util.ToString(searchModel.SearchCondition.SortingNo) + "%"
});
var stocks = GetStock();
var areas = GetStockAreas();
foreach (DataRow dr in dt.Rows)
{
var stock = stocks.Find(x => x.CN_S_STOCK_CODE == (dr["CN_S_STOCK_CODE"].ToString().Trim())) ?? new TN_AB_STOCKEntity();
//var area = areas.Find(x => x.CN_S_AREA_CODE.Equals(dr["CN_S_STOCK_AREA"].ToString().Trim())) ?? new AutoBomStockAreaEntity();
dr["CN_S_STOCK_CODE"] = stock.CN_S_STOCK_NAME;
//dr["CN_S_STOCK_AREA"] = area.CN_S_AREA_NAME;
}
result = OperateResult.Succeed("", new
{
rows = dt,
total = total
});
}
catch (Exception ex)
{
result = OperateResult.Error(ex.Message);
}
IsoDateTimeConverter timeFormat = new IsoDateTimeConverter();
timeFormat.DateTimeFormat = "yyyy-MM-dd HH:mm:ss";
return JsonConvert.SerializeObject(result, timeFormat);
//return result;
}
#endregion
#region 分拣数据
///
/// 分拣数据
///
///
///
[HttpGet]
public OperateResult GetSortingDtl(string sortingNo)
{
try
{
var sortingDtl = BLLCreator.Create>().GetList(new
{
CN_S_SORTING_NO = sortingNo
});
return OperateResult.Succeed(null, sortingDtl);
}
catch (Exception ex)
{
return OperateResult.Error(ex.Message);
}
}
#endregion
#region 分拣明细
///
/// 分拣明细
///
///
///
[HttpGet]
public OperateResult GetCurrentSortingLocation(string sortingNo)
{
try
{
var sortingDtl = BLLCreator.Create>().GetList(new
{
CN_S_SORTING_NO = sortingNo
});
var stocks = GetStock();
var areas = GetStockAreas();
foreach (var dtl in sortingDtl)
{
var stock = stocks.Find(x => x.CN_S_STOCK_CODE == (Util.ToString(dtl.CN_S_STOCK_CODE).Trim())) ?? new TN_AB_STOCKEntity();
var area = areas.Find(x => x.CN_S_AREA_CODE.Equals(Util.ToString(dtl.CN_S_AREA_CODE).Trim())) ?? new AutoBomStockAreaEntity();
dtl.CN_S_STOCK_CODE = stock.CN_S_STOCK_NAME;
dtl.CN_S_AREA_CODE = area.CN_S_AREA_NAME;
}
return OperateResult.Succeed(null, sortingDtl);
}
catch (Exception ex)
{
return OperateResult.Error(ex.Message);
}
}
#endregion
#region 分拣结果
///
/// 分拣结果
///
///
///
[HttpGet]
public OperateResult GetSortingResult(string sortingNo)
{
try
{
var sortingDtl = BLLCreator.Create>().GetList(new
{
CN_S_SORTING_NO = sortingNo
});
return OperateResult.Succeed(null, sortingDtl);
}
catch (Exception ex)
{
return OperateResult.Error(ex.Message);
}
}
#endregion
}
}