using HH.WMS.BLL; using HH.WMS.BLL.Basic; using HH.WMS.Common; using HH.WMS.Common.External; using HH.WMS.Entitys; using HH.WMS.Entitys.Basic; using HH.WMS.Entitys.Common; using Newtonsoft.Json; 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.Common.Controllers { public class LocationExtController : BaseController { #region 缓存同步-根据仓库号和货位号获取一条数据 /// /// 根据仓库号和货位号获取一条数据 /// /// 仓库号和货位号条件集合 /// /// [HanHe(XDL)] CREATED 2018/06/28 [HttpGet] public string GetModel(string Where) { TN_WM_LOCATION_EXTEntity entity = BLL.BLLCreator.Create().GetExtModel(Where); return JsonConvert.SerializeObject(entity); } #endregion #region 缓存同步-删除 /// /// 缓存同步-删除 /// /// 删除实体 /// /// [HanHe(XDL)] CREATED 2018/06/28 [HttpGet] public string Delete(string Where) { SqlExecuteResult reuslt = BLL.BLLCreator.Create().Delete(Where); return JsonConvert.SerializeObject(reuslt); } #endregion #region 缓存同步-新增 /// /// 缓存同步-新增 /// /// 新增实体 /// /// [HanHe(XDL)] CREATED 2018/06/28 [HttpPost] public string Add(dynamic obj) { TN_WM_LOCATION_EXTEntity Entity = JsonConvert.DeserializeObject(obj.ExtEntity.ToString()); var result = JsonConvert.SerializeObject(BLL.BLLCreator.Create().Add(Entity)); return result; } #endregion #region 缓存同步-同步时修改数据 /// /// 缓存同步-同步时修改数据 /// /// 更新实体 /// /// [HanHe(XDL)] CREATED 2018/06/28 [HttpPost] public string UpdateSync(dynamic obj) { TN_WM_LOCATION_EXTEntity Entity = JsonConvert.DeserializeObject(obj.ExtEntity.ToString()); SqlExecuteResult reuslt = BLL.BLLCreator.Create().UpdateSync(Entity); return JsonConvert.SerializeObject(reuslt); } #endregion #region 缓存同步-修改成报废 /// /// 缓存同步-修改成报废 /// /// 删除实体 /// /// [HanHe(XDL)] CREATED 2018/06/28 [HttpGet] public string UpdateBFState(string Where) { Log.Detail("缓存同步-修改成报废", "接收参数:" + Where); try { HH.TOOLS.LOG.LogPara logPara = new HH.TOOLS.LOG.LogPara("缓存同步-修改成报废"); logPara.Push("接收参数:" + Where); var result = JsonConvert.SerializeObject(BLL.BLLCreator.Create().UpdateBFState(Where, "")); logPara.PushAndAdd("返回结果:" + result); return result; } catch(Exception ex) { Log.Detail("缓存同步-修改成报废", "报错原因:" + ex.Message); return ""; } } #endregion #region 更新货位状态 [HttpGet] public string UpdateLocationState(string locationCode, string state) { var logPara = LogType.LogPara("更新货位状态"); Log.Detail(logPara, "接收参数,货位:" + locationCode + ",状态:" +state); OperateResult result = BLL.BLLCreator.Create().UpdateState(locationCode, state, ""); Log.Detail(logPara, "结果:" + JsonConvert.SerializeObject(result)); return JsonConvert.SerializeObject(result); } #endregion #region 货位列表 /// /// 货位列表-分页 /// /// /// /// [HttpPost] public string GetLocationExtList(SearchModel searchModel) { return ValidateToken(searchModel.TokenId, x => { OperateResult list = BLLCreator.Create().GetLocationExtList(searchModel); return JsonConvert.SerializeObject(list); }); } #endregion #region 货位列表 /// /// 货位列表 /// /// /// /// [HttpGet] public string GetLocationList() { return ValidateToken(x => { List locationList = BLLCreator.Create().GetLocationList(); return JsonConvert.SerializeObject(locationList); }); } /// /// 货位实体 /// /// [HttpGet] public string GetLocationModel(string locationCode) { return ValidateToken(x => { TN_WM_LOCATION_EXTEntity locationModel = BLLCreator.CreateDapper().GetSingleEntity(new { CN_S_LOCATION_CODE = locationCode }); return JsonConvert.SerializeObject(OperateResult.Succeed("", locationModel)); }); } #endregion #region public OperateResult GetLocationState(string stockCode) { try { return ValidateToken(Y => { if (Constants.SysConfig.DB_TYPE == "MSSQL") { List areas = BLLCreator.Create().GetArea(1, stockCode); areas.AddRange(BLLCreator.Create().GetArea(4, stockCode)); if (areas.Count() == 0) { return OperateResult.Succeed("", new DataTable()); } DataTable list = BLLCreator.Create().GetAreaStorageInfo(stockCode, areas.Select(x => x.CN_S_AREA_CODE).ToArray()); foreach (DataRow dr in list.Rows) { dr["CN_S_AREA_CODE"] = areas.Find(x => x.CN_S_AREA_CODE.Equals(dr["CN_S_AREA_CODE"].ToString().Trim())).CN_S_AREA_NAME; } return OperateResult.Succeed("", list); } else { DataTable list = new DataTable(); return OperateResult.Succeed("", list); } }); } catch (Exception ex) { return OperateResult.Error(ex.Message); } } #endregion } }