using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.Mvc; using QMAPP.Common.Web.Controllers; using QMFrameWork.WebUI.Attribute; using QMAPP.FJC.Web.Models.Basic; using QMFrameWork.Data; using QMAPP.Entity; using QMAPP.FJC.Entity.Basic; using QMAPP.ServicesAgent; using QMFrameWork.WebUI.DataSource; using QMFrameWork.Common.Serialization; namespace QMAPP.FJC.Web.Controllers { public class BomHdrController : QController { #region 获取列表 /// <summary> /// 加载列表 /// </summary> /// <returns>结果</returns> [HandleException] public ActionResult BomHdrList(bool? callBack) { BomHdrModel seachModel = new BomHdrModel(); if (callBack == true) TryGetSelectBuffer<BomHdrModel>(out seachModel); seachModel.rownumbers = false; seachModel.url = "/BomHdr/GetList"; return View("BomHdrList", seachModel); } /// <summary> /// 获取列表 /// </summary> /// <param name="callBack">是否回调</param> /// <returns>列表</returns> [HandleException] public ActionResult GetList(bool? callBack) { BomHdrModel seachModel = null; DataPage page = null; ServiceAgent wcfAgent = this.GetServiceAgent(); BomHdr condition = null; DataResult<DataPage> pageResult = new DataResult<DataPage>(); try { //获取查询对象 seachModel = GetModel<BomHdrModel>(); #region 获取缓存值 if (callBack != null) { TryGetSelectBuffer<BomHdrModel>(out seachModel); } else { //保存搜索条件 SetSelectBuffer<BomHdrModel>(seachModel); } #endregion //获取前台分页设置信息 page = this.GetDataPage(seachModel); condition = CopyToModel<BomHdr, BomHdrModel>(seachModel); #region wcf服务统一接口 pageResult = wcfAgent.InvokeServiceFunction<DataResult<DataPage>>("BomHdrBLL_GetList", condition, page); if (pageResult.IsSuccess == false) { SetMessage(pageResult.Msg); return BomHdrList(true); } DateGridResult<BomHdr> result = new DateGridResult<BomHdr>(); result.Total = pageResult.Result.RecordCount; result.Rows = JsonConvertHelper.GetDeserialize<List<BomHdr>>(pageResult.Result.Result.ToString()); #endregion return Content(result.GetJsonSource()); } catch (Exception ex) { throw ex; } } #endregion #region 编辑 /// <summary> /// 编辑载入 /// </summary> /// <returns>处理结果</returns> [HandleException] public ActionResult BomHdrEdit() { BomHdrModel model = new BomHdrModel(); try { return View("BomHdrEdit", model); } catch (Exception ex) { throw ex; } } #endregion #region 保存 /// <summary> /// 保存 /// </summary> /// <param name="model"></param> /// <returns>处理结果</returns> [HttpPost] [HandleException] [ValidateInput(false)] public ActionResult Save(BomHdrModel saveModel) { BomHdr Entity = null; ServiceAgent wcfAgent = this.GetServiceAgent(); DataResult<int> result = new DataResult<int>(); try { Entity = CopyToModel<BomHdr, BomHdrModel>(saveModel); if (string.IsNullOrEmpty(Entity.PID) == true) { //新增 result = wcfAgent.InvokeServiceFunction<DataResult<int>>("BomHdrBLL_Insert", Entity); } if (result.IsSuccess == false) { SetMessage(result.Msg); return View("BomHdrEdit", saveModel); } return this.GetJsViewResult(string.Format("parent.List(1);parent.showTitle('{0}');parent.closeAppWindow1();", AppResource.SaveMessge)); } catch (Exception ex) { throw ex; } } #endregion #region 删除 /// <summary> /// 删除 /// </summary> /// <returns>结果</returns> [HttpPost] [HandleException] public ActionResult BomHdrDelete()//ProductionLineModel saveMode { string selectKey = Request.Form["selectKey"]; ServiceAgent wcfAgent = this.GetServiceAgent(); DataResult<int> result = new DataResult<int>(); try { result = wcfAgent.InvokeServiceFunction<DataResult<int>>("BomHdrBLL_Delete", selectKey); if (result.IsSuccess == false) { SetMessage(result.Msg); return BomHdrList(true); } SetMessage(AppResource.DeleteMessage); return BomHdrList(true); } catch (Exception ex) { throw ex; } } #endregion #region 配置Bom明细 /// <summary> /// 加载列表 /// </summary> /// <param name="callBack"></param> /// <returns></returns> public ActionResult BomHdrConfig(bool? callBack) { BomDetailModel bomDetailModel = new BomDetailModel(); string BOM_HDR_PID = Request.Params["BOM_HDR_PID"]; string MATERIAL_CODE = Request.Params["MATERIAL_CODE"]; if (callBack == true) TryGetSelectBuffer<BomDetailModel>(out bomDetailModel); bomDetailModel.rownumbers = false; bomDetailModel.url = "/BomHdr/BomHdrConfigList?BOM_HDR_PID=" + BOM_HDR_PID + "&MATERIAL_CODE=" + MATERIAL_CODE; bomDetailModel.BOM_HDR_PID = Request.Params["BOM_HDR_PID"]; bomDetailModel.MATERIAL_CODE = Request.Params["MATERIAL_CODE"]; return View("BomHdrConfig", bomDetailModel); } /// <summary> /// 获取列表 /// </summary> /// <param name="callBack"></param> /// <returns></returns> public ActionResult BomHdrConfigList(bool? callBack) { BomDetailModel seachModel = null; DataPage page = null; ServiceAgent wcfAgent = this.GetServiceAgent(); BomDetail condition = null; DataResult<DataPage> pageResult = new DataResult<DataPage>(); string BOM_HDR_PID = Request.Params["BOM_HDR_PID"]; string MATERIAL_CODE = Request.Params["MATERIAL_CODE"]; try { //获取查询对象 seachModel = GetModel<BomDetailModel>(); #region 获取缓存值 if (callBack != null) { TryGetSelectBuffer<BomDetailModel>(out seachModel); } else { //保存搜索条件 SetSelectBuffer<BomDetailModel>(seachModel); } #endregion //获取前台分页设置信息 page = this.GetDataPage(seachModel); if (string.IsNullOrEmpty(seachModel.BOM_HDR_PID)) { seachModel.BOM_HDR_PID = BOM_HDR_PID; } condition = CopyToModel<BomDetail, BomDetailModel>(seachModel); #region wcf服务统一接口 pageResult = wcfAgent.InvokeServiceFunction<DataResult<DataPage>>("BomHdrBLL_BomHdrConfigList", condition, page); if (pageResult.IsSuccess == false) { SetMessage(pageResult.Msg); return BomHdrConfig(true); } DateGridResult<BomDetail> result = new DateGridResult<BomDetail>(); result.Total = pageResult.Result.RecordCount; result.Rows = JsonConvertHelper.GetDeserialize<List<BomDetail>>(pageResult.Result.Result.ToString()); #endregion return Content(result.GetJsonSource()); } catch (Exception ex) { throw ex; } } /// <summary> /// 配置Bom明细添加页面 /// </summary> /// <returns></returns> public ActionResult BomHdrConfigEdit() { BomDetailModel model = new BomDetailModel(); model = GetModel<BomDetailModel>(); model.BOM_HDR_PID = Request.Params["BOM_HDR_PID"]; model.MATERIAL_CODE = Request.Params["MATERIAL_CODE"]; try { return View("BomHdrConfigEdit", model); } catch (Exception ex) { throw ex; } } /// <summary> /// 保存Bom明细 /// </summary> /// <returns></returns> public ActionResult BomHdrConfigSave(BomDetailModel saveModel) { BomDetail entity = null; ServiceAgent wcfAgent = this.GetServiceAgent(); DataResult<int> result = new DataResult<int>(); string BOM_HDR_PID = Request.Params["BOM_HDR_PID"]; try { entity = CopyToModel<BomDetail, BomDetailModel>(saveModel); if (string.IsNullOrEmpty(BOM_HDR_PID)) { entity.BOM_HDR_PID = BOM_HDR_PID; } if (string.IsNullOrEmpty(entity.PID) == true) { //新增 result = wcfAgent.InvokeServiceFunction<DataResult<int>>("BomHdrBLL_BomHdrConfigSave", entity); } if (result.IsSuccess == false) { SetMessage(result.Msg); return View("BomHdrConfigEdit", saveModel); } return this.GetJsViewResult(string.Format("parent.List(1);parent.showTitle('{0}');parent.closeAppWindow1();", AppResource.SaveMessge)); } catch (Exception) { throw; } } /// <summary> /// 删除 /// </summary> /// <returns>结果</returns> [HttpPost] [HandleException] public ActionResult BomDetailDelete()//ProductionLineModel saveMode { string selectKey = Request.Form["selectKey"]; ServiceAgent wcfAgent = this.GetServiceAgent(); DataResult<int> result = new DataResult<int>(); try { result = wcfAgent.InvokeServiceFunction<DataResult<int>>("BomHdrBLL_DeleteBomConfig", selectKey); if (result.IsSuccess == false) { SetMessage(result.Msg); return BomHdrConfig(true); } SetMessage(AppResource.DeleteMessage); return BomHdrConfig(true); } catch (Exception ex) { throw ex; } } #endregion } }