using Estsh.Core.Controllers; using Estsh.Core.Model.ExcelModel; using Estsh.Core.Model.Result; using Estsh.Core.Models; using Estsh.Core.Services.IServices; using Estsh.Core.Util; using Microsoft.AspNetCore.Mvc; using System.Collections; using System.Text; using System.Text.Json; using System.Text.RegularExpressions; /*************************************************************************************************** * * 更新人:sitong.dong * 描述:关键数据管理 * 修改时间:2022.06.22 * 修改日志:系统迭代升级 * **************************************************************************************************/ namespace Estsh.Core.Web.Controllers { public class KeyDataDefineController : BaseController { private IKeyDataDefineService service; public KeyDataDefineController(IKeyDataDefineService _service) { service = _service; } // // GET: /Menu/ public ActionResult Index() { return View(); } /// /// 获取关键数据管理列表数据 /// /// /// /// /// /// public ActionResult getKeyDataListByPage(String keydata_name_search, Pager pager, String direction, String sort, String enabled_search="Y") { Hashtable result = new Hashtable(); result.Add("pager.pageNo", pager.pageNo); Hashtable dataHt = this.service.getKeyDataListByPage(keydata_name_search, enabled_search, pager, direction, sort); result.Add("rows", dataHt["dataList"]); result.Add("pager.totalRows", dataHt["totalCount"]); result.Add("sort", sort); result.Add("direction", direction); return Json(result); } /// /// 保存菜单数据 /// /// public ActionResult saveKeyData() { Hashtable result = new Hashtable(); String message = ""; string flag = ""; String editType = Request.Form["editType"].ToString(); String keydataId = Request.Form["keydataId"].ToString(); String keydataName = Request.Form["keydataName"].ToString(); String keydataDesc = Request.Form["keydataDesc"].ToString(); String maxValue = Request.Form["maxValue"].ToString(); String minValue = Request.Form["minValue"].ToString(); String maxTolerance = Request.Form["maxTolerance"].ToString(); String minTolerance = Request.Form["minTolerance"].ToString(); String enabled = Request.Form["enabled"].ToString(); SysKeydata model = new SysKeydata(); model.KeydataName = keydataName; model.KeydataDesc = keydataDesc; model.MaxValue =Convert.ToInt32( maxValue); model.MinValue = Convert.ToInt32(minValue); model.MaxTolerance = Convert.ToInt32(maxTolerance); model.MinTolerance = Convert.ToInt32(minTolerance); model.Enabled = enabled; model.UpdateUserId = CurrentEmp.EmpId; model.CreateUserId = CurrentEmp.EmpId; if (editType != null && editType.Trim().Equals("edit")) { try { model.UpdateUserId = CurrentEmp.EmpId; model.KeydataId =Convert.ToInt32( keydataId); this.service.updateKeyData(model); message = "修改成功"; flag = "OK"; } catch (Exception e) { message = "修改失败!"; flag = "NO"; } } else { try { model.CreateUserId = CurrentEmp.EmpId; this.service.saveKeyData(model); message = "添加成功"; flag = "OK"; } catch (Exception e) { message = "添加失败!"; flag = "NO"; } } result.Add("message", message); result.Add("flag",flag); return Json(result) ; } /// /// 查看菜单详情 /// /// /// public ActionResult getKeyDataDetail(String keydataId) { Hashtable ht = this.service.getKeyDataDetail(keydataId); ViewData.Add("keydataId",ht["keydataId"]); ViewData.Add("keydataName", ht["keydataName"]); ViewData.Add("keydataDesc", ht["keydataDesc"]); ViewData.Add("maxValue", ht["maxValue"]); ViewData.Add("minValue", ht["minValue"]); ViewData.Add("maxTolerance", ht["maxTolerance"]); ViewData.Add("minTolerance", ht["minTolerance"]); ViewData.Add("enabled", ht["enabled"]); return View("ViewKeyDataDefine"); } /// /// 编辑菜单 /// /// /// public ActionResult editKeyData(String keydataId) { if (!string.IsNullOrEmpty(keydataId)) { Hashtable ht = this.service.getKeyDataDetail(keydataId); ViewData.Add("editType", "edit"); ViewData.Add("keydataId", ht["keydataId"]); ViewData.Add("keydataName", ht["keydataName"]); ViewData.Add("keydataDesc", ht["keydataDesc"]); ViewData.Add("maxValue", ht["maxValue"]); ViewData.Add("minValue", ht["minValue"]); ViewData.Add("maxTolerance", ht["maxTolerance"]); ViewData.Add("minTolerance", ht["minTolerance"]); ViewData.Add("enabled", ht["enabled"]); } else { ViewData.Add("editType", "new"); } return View("EditKeyDataDefine"); } /// /// 删除菜单 /// /// /// public ActionResult deleteKeyData(String ids) { int delCount = 0; try { delCount = this.service.deleteKeyData(ids); } catch(Exception e) { delCount = -1; } Hashtable result = new Hashtable(); result.Add("status", delCount); return Json(result); } /// /// 启用 /// /// /// public ActionResult onEnable(String ids) { int delCount = 0; try { delCount = this.service.EnableData(ids); } catch (Exception e) { delCount = -1; } Hashtable result = new Hashtable(); result.Add("status", delCount); return Json(result); } /// /// 禁用 /// /// /// public ActionResult onDisable(String ids) { int delCount = 0; try { delCount = this.service.DisableData(ids); } catch (Exception e) { delCount = -1; } Hashtable result = new Hashtable(); result.Add("status", delCount); return Json(result); } /// /// 获取 站点 信息 /// BY NOAH /// /// public ActionResult getTerminalName() { Hashtable result = new Hashtable(); List menuList = this.service.getTerminalName(); result.Add("list", menuList); return Json(result); } /// /// 获取 产线 信息 /// BY NOAH /// /// public ActionResult getBoardName() { Hashtable result = new Hashtable(); List menuList = this.service.getBoardName(); result.Add("list", menuList); return Json(result); } /// /// 判断是否为数字类型 /// BY NOAH /// /// /// public bool isNum(string s) { string pattern = "^[0-9]*$"; Regex rx = new Regex(pattern); return rx.IsMatch(s); } /// /// 导出数据到Excel /// BY NOAH /// /// /// /// /// /// /// public ActionResult exportData(String keydata_name_search, String enabled_search, Pager pager, String sort, String direction, String isPage) { Boolean paging = false; if (isPage == null || "".Equals(isPage)) { paging = false; } else { if ("1".Equals(isPage.Trim())) { paging = true; } else { paging = false; } } Hashtable dataHt = this.service.getTableListByPage(keydata_name_search, enabled_search, pager, direction, sort, paging);//txtOrderNo, pager, direction, sort, paging List listHt = (List)dataHt["dataList"]; var memoryStream = ExcelHelper.ToExcel(listHt); return File(memoryStream.ToArray(), "application/ms-excel", "关键数据管理.xls"); } /// /// 导入Excel文件 /// /// public ActionResult importKeyData() { Hashtable result = new Hashtable(); IFormFile file = Request.Form.Files[0]; List data = ExcelHelper.GetList(file, 0); result = service.ImportExcel(data, CurrentEmp.EmpId); return Json(result); } } }