using System; using System.Collections.Generic; using System.Linq; using System.Web.Mvc; using QMAPP.Common.Web.Controllers; using QMFrameWork.WebUI.Attribute; using QMAPP.FJC.Web.Models.Basic; using QMFrameWork.Data; using QMAPP.ServicesAgent; using QMAPP.FJC.Entity.Basic; using QMFrameWork.WebUI.DataSource; using QMFrameWork.Common.Serialization; using QMAPP.Entity; using QMAPP.FJC.Entity; using QMAPP.FJC.Entity.ODS; using QMAPP.FJC.Web.Models.ODS; using QMAPP.MD.Entity; using WorkCenter = QMAPP.MD.Entity.WorkCenter; namespace QMAPP.FJC.Web.Controllers { /// <summary> /// 模块编号: /// 作 用:视频播放控制层 /// 作 者:周晓东 /// 编写日期:2017年11月28日 ///</summary> public class OdsVideoInfoController : QController { #region 获取列表 /// <summary> /// 加载列表 /// </summary> /// <returns>结果</returns> [HandleException] public ActionResult List(bool? callBack) { VideoInfoModel seachModel = new VideoInfoModel(); if (callBack == true) TryGetSelectBuffer<VideoInfoModel>(out seachModel); seachModel.rownumbers = false; seachModel.url = "/OdsVideoInfo/GetList"; return View("VideoInfoList", seachModel); } /// <summary> /// 获取列表 /// </summary> /// <param name="callBack">是否回调</param> /// <returns>列表</returns> [HandleException] public ActionResult GetList(bool? callBack) { VideoInfoModel seachModel = null; DataResult<DataPage> pageResult = new DataResult<DataPage>(); DataPage page = new DataPage(); ServiceAgent wcfAgent = this.GetServiceAgent(); VideoInfo condition = null; try { //获取查询对象 seachModel = GetModel<VideoInfoModel>(); #region 获取缓存值 if (callBack != null) { TryGetSelectBuffer<VideoInfoModel>(out seachModel); } else { //保存搜索条件 SetSelectBuffer<VideoInfoModel>(seachModel); } #endregion //获取前台分页设置信息 page = this.GetDataPage(seachModel); condition = CopyToModel<VideoInfo, VideoInfoModel>(seachModel); #region wcf服务统一接口 pageResult = wcfAgent.InvokeServiceFunction<DataResult<DataPage>>("VideoInfoBLL_GetDataPageList", condition, page); if (pageResult.IsSuccess == false) { SetMessage(pageResult.Msg); return List(true); } DateGridResult<VideoInfo> result = new DateGridResult<VideoInfo>(); result.Total = pageResult.Result.RecordCount; result.Rows = JsonConvertHelper.GetDeserialize<List<VideoInfo>>(pageResult.Result.Result.ToString()); #endregion return Content(result.GetJsonSource()); } catch (Exception ex) { throw ex; } } #endregion #region 编辑 /// <summary> /// 编辑载入 /// </summary> /// <returns>处理结果</returns> [HandleException] public ActionResult Edit() { VideoInfoModel model = new VideoInfoModel(); string ID = Request.Params["PID"]; VideoInfo Entity = new VideoInfo(); ServiceAgent wcfAgent = this.GetServiceAgent(); DataResult<VideoInfo> result = new DataResult<VideoInfo>(); try { if (string.IsNullOrEmpty(ID) == false) { //修改获取原数据 Entity.PID = ID; result = wcfAgent.InvokeServiceFunction<DataResult<VideoInfo>>(QMAPP.ServicesAgent.B9BasicService.MachineInfoBLL_Get.ToString(), Entity); if (result.IsSuccess == false) { SetMessage(result.Msg); return View("VideoInfoEdit", model); } model = CopyToModel<VideoInfoModel, VideoInfo>(result.Result); //根据工位信息获得工序信息 string kind = model.WORKLOC_CODE; var WORKCELL_CODE = ""; ServiceAgent wcfAgent1 = this.GetServiceAgent(); if (string.IsNullOrEmpty(kind) == false) { var dataResult = wcfAgent1.InvokeServiceFunction<List<WorkLoc>> ("WorkLocBLL_GetWorkCellFromWorkLocList", new WorkLoc(), kind); foreach (WorkLoc item in dataResult) { WORKCELL_CODE = item.WORKCELL_CODE; } } model.WORKCELL_CODE = WORKCELL_CODE; } return View("VideoInfoEdit", model); } catch (Exception ex) { throw ex; } } #endregion #region 保存 /// <summary> /// 保存 /// </summary> /// <param name="model"></param> /// <returns>处理结果</returns> [HttpPost] [HandleException] [ValidateInput(false)] public ActionResult Save(VideoInfoModel saveModel) { VideoInfo Entity = null; ServiceAgent wcfAgent = this.GetServiceAgent(); DataResult<int> result = new DataResult<int>(); try { Entity = CopyToModel<VideoInfo, VideoInfoModel>(saveModel); if (string.IsNullOrEmpty(Entity.PID) == true) { //新增 result = wcfAgent.InvokeServiceFunction<DataResult<int>>(QMAPP.ServicesAgent.B9BasicService.MachineInfoBLL_Insert.ToString(), Entity); } else { //修改 result = wcfAgent.InvokeServiceFunction<DataResult<int>>(QMAPP.ServicesAgent.B9BasicService.MachineInfoBLL_Update.ToString(), Entity); } if (result.IsSuccess == false) { SetMessage(result.Msg); return View("MachineInfoEdit", 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 Delete(VideoInfoModel saveMode) { string selectKey = Request.Form["selectKey"]; ServiceAgent wcfAgent = this.GetServiceAgent(); DataResult<int> result = new DataResult<int>(); try { result = wcfAgent.InvokeServiceFunction<DataResult<int>>(QMAPP.ServicesAgent.B9BasicService.MachineInfoBLL_Delete.ToString(), selectKey); if (result.IsSuccess == false) { SetMessage(result.Msg); return List(true); } SetMessage(AppResource.DeleteMessage); return List(true); } catch (Exception ex) { throw ex; } } #endregion #region 获取工作中心下拉列表 /// <summary> /// 获取工作中心下拉列表 /// </summary> /// <returns></returns> public ContentResult GetWorkCenterList() { //List<WorkCenter> listProcessInfo = new List<WorkCenter>(); ComboboxResult model = new ComboboxResult(); ServiceAgent wcfAgent = this.GetServiceAgent(); WorkCenter entity = new WorkCenter(); DataResult<List<WorkCenter>> result = new DataResult<List<WorkCenter>>(); try { //获取工序信息 result = wcfAgent.InvokeServiceFunction<DataResult<List<WorkCenter>>>("WorkCenterBLL_GetWorkCenterList", entity); if (result.IsSuccess == false) { SetMessage(result.Msg); return Content(model.ToString()); } foreach (var item in result.Result) { if (model.Items.Count == 0) { model.Add(new ComboboxItem { ID = "", Text = new DictController().EmptyItemTitle }); model.Add(new ComboboxItem { ID = item.WORKCENTER_CODE, Text = item.WORKCENTER_NAME }); } else { model.Add(new ComboboxItem { ID = item.WORKCENTER_CODE, Text = item.WORKCENTER_NAME }); } } return Content(model.ToString()); } catch (Exception ex) { throw ex; } } #endregion } }