using Hh.Mes.Common.Request; using Hh.Mes.Pojo.System; using Hh.Mes.POJO.Entity; using Hh.Mes.Service.Distribution; using Microsoft.AspNetCore.Hosting; using Microsoft.AspNetCore.Mvc; using WebMvc.Aop; using Hh.Mes.Service.SystemAuth; using Hh.Mes.POJO.Response; namespace WebMvc.Areas.Distribution.Controllers { [Area("Distribution")] public class BaseLocationController : BaseController { private readonly BaseLocationService _service; protected readonly IHostingEnvironment hostingEnvironment; private readonly MaterialDistributeLoadDataService _materialService; public BaseLocationController(IAuth authUtil, BaseLocationService service) : base(authUtil) { _service = service; _materialService = new MaterialDistributeLoadDataService(); } #region 视图功能 /// <summary> /// 默认视图Action /// </summary> /// <returns></returns> [Authenticate] [ServiceFilter(typeof(OperLogFilter))] public ActionResult Index() { return View(); } /// <summary> /// 料点选择页面 /// </summary> /// <returns></returns> [Authenticate] [ServiceFilter(typeof(OperLogFilter))] public ActionResult LocationChoice() { return View(); } #endregion #region 数据操作 /// <summary> /// 加载及分页查询 /// </summary> /// <param name="pageRequest">表单请求信息</param> /// <param name="entity">请求条件实例</param> /// <returns></returns> [HttpPost] public string Load(PageReq pageRequest, base_location entity) { return Serialize(_service.Load(pageRequest, entity)); } /// <summary> /// 新增数据 /// </summary> /// <param name="entity">新增实例</param> /// <returns></returns> [HttpPost] [ServiceFilter(typeof(OperLogFilter))] public string Ins(base_location entity) { return Serialize(_service.Ins(entity)); } /// <summary> /// 修改数据 /// </summary> /// <param name="entity">修改实例</param> /// <returns></returns> [HttpPost] [ServiceFilter(typeof(OperLogFilter))] public string Upd(base_location entity) { return Serialize(_service.Upd(entity)); } /// <summary> /// 删除数据 /// </summary> /// <param name="ids"></param> /// <returns></returns> [HttpPost] [ServiceFilter(typeof(OperLogFilter))] public string DelByIds(int[] ids) { return Serialize(_service.DelByIds(ids)); } #endregion #region 导出数据 /// <summary> /// 导出数据 /// </summary> /// <param name="entity">请求条件实例</param> /// <returns></returns> [HttpPost] public string Export(base_location entity) { return Serialize(_service.ExportData(entity)); } #endregion #region 自定义方法 /// <summary> /// 料点配置查询 /// </summary> /// <param name="pageRequest">表单请求信息</param> /// <param name="entity">请求条件实例</param> /// <returns></returns> [HttpPost] public string LoadData(PageReq pageRequest, base_location entity) { return Serialize(_service.LoadData(pageRequest, entity)); } /// <summary> /// 获取选中的料点 /// </summary> /// <param name="locationCode"></param> /// <returns></returns> [HttpPost] [ServiceFilter(typeof(OperLogFilter))] public string GetLocationChoiceByLocationCode(string locationCode) { return Serialize(_service.GetLocationChoiceByLocationCode(locationCode)); } /// <summary> /// 料点配置 /// </summary> /// <param name="stationCode"></param> /// <param name="endPositionCode"></param> /// <param name="checkeds"></param> /// <returns></returns> [HttpPost] [XSSFilter] public string OperateLocationStation(string stationCode, string endPositionCode, bool checkeds) { return Serialize(_service.OperateLocationStation(stationCode, endPositionCode, checkeds)); } /// <summary> /// 叫料字典初始化 /// </summary> [HttpPost] public string IniLocationVm() { _materialService.IniLocationVm(true); var response = new Response(); return Serialize(response); } #endregion } }