using Dapper; 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 NPOI.HSSF.UserModel; using System.Collections; /*************************************************************************************************** * * 更新人:sitong.dong * 描述:零件关键数据 * 修改时间:2022.06.22 * 修改日志:系统迭代升级 * **************************************************************************************************/ namespace Estsh.Core.Web.Controllers { public class PartKeyDataDefineController : BaseController { private IPartKeyDataDefineService service; public PartKeyDataDefineController(IPartKeyDataDefineService _service) { service = _service; } public ActionResult Index() { return View(); } /// /// 获取零件关键数据列表数据 /// /// 菜单名称 /// 分页 /// 排序方式 /// 排序列 /// public ActionResult GetQuery(String partNo ,String txtProcessName,String txtKeyDataName,string cbPdline, Pager pager, String direction, String sort, String enabled = "Y") { Hashtable result = new Hashtable(); result.Add("pager.pageNo", pager.pageNo); Hashtable dataHt = this.service.GetQuery(partNo, pager, direction, sort, txtProcessName, txtKeyDataName, cbPdline, enabled); result.Add("rows", dataHt["dataList"]); result.Add("pager.totalRows", dataHt["totalCount"]); result.Add("sort", sort); result.Add("direction", direction); return Json(result); } /// /// 判断数据是否存在 /// /// 零件ID /// 制程ID /// 关键数据ID /// public ActionResult GetpartKeyData() { string aPartID = ""; string aProcessID = ""; string aKeyDataID = ""; string message = ""; Hashtable reault = new Hashtable(); bool bo = service.GetpartKeyData(aPartID, aProcessID, aKeyDataID); if (bo) message = "1"; else message = "0"; reault.Add("status", message); return Json(reault); } /// /// 获取零件号信息 /// /// public ActionResult GetPartID() { Hashtable reault = new Hashtable(); List list = service.GetPartID(); reault.Add("list", list); return Json(reault); } /// /// 获取制程信息 /// /// public ActionResult GetProcessID() { Hashtable reault = new Hashtable(); List list = service.GetProcessID(); reault.Add("list", list); return Json(reault); } /// /// 获取关键数据信息 /// /// public ActionResult GetKeyDataID() { Hashtable reault = new Hashtable(); List list = service.GetKeyDataID(); reault.Add("list", list); return Json(reault); } /// /// 编辑 /// /// /// public ActionResult edit(string guid) { List DeptInfo = this.service.GetRow(" and a.guid='" + guid + "'"); ViewData.Add("editType", "edit"); if (DeptInfo.Count > 0) { ViewData.Add("partNo", DeptInfo[0].PartNo); ViewData.Add("processId", DeptInfo[0].ProcessId); ViewData.Add("keydataId", DeptInfo[0].KeydataId); ViewData.Add("itemCount", DeptInfo[0].ItemCount); ViewData.Add("guid", DeptInfo[0].Guid); ViewData.Add("torqueCommand", DeptInfo[0].TorqueCommand); } return View("EditPartKey"); } /// /// 删除 /// /// /// public ActionResult delete(string guid) { int delCount = 0; try { delCount = this.service.DeleteDetail(guid); } 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); } /// /// 保存数据 /// /// public ActionResult saveDept() { String editType = Request.Form["editType"].ToString(); String cmbPartNo = Request.Form["cmbPartNo"].ToString(); String cmbProcessName = Request.Form["cmbProcessName"].ToString(); String cmbKeyDataName = Request.Form["cmbKeyDataName"].ToString(); String nuItemCount = Request.Form["nuItemCount"].ToString(); String torqueCommand = Request.Form["nuTorqueCommand"].ToString(); String message = ""; if (editType != null && editType.Trim().Equals("edit")) { try { String guid = Request.Form["guid"].ToString(); this.service.UpdateKeyData(guid, cmbProcessName, cmbPartNo, cmbKeyDataName, nuItemCount, torqueCommand); //统一更新扭矩指令 this.service.UpdateTorqueCommand(cmbPartNo, cmbProcessName, cmbKeyDataName, torqueCommand); message = "修改成功"; } catch (Exception e) { message = "修改失败!"; } } else { try { if (service.GetpartKeyData(cmbPartNo, cmbProcessName, cmbKeyDataName)) { message = "数据已经存在!"; } else { this.service.insert(cmbPartNo, cmbProcessName, cmbKeyDataName, nuItemCount, torqueCommand); //统一更新扭矩指令 this.service.UpdateTorqueCommand(cmbPartNo, cmbProcessName, cmbKeyDataName, torqueCommand); message = "添加成功"; } } catch (Exception e) { message = "添加失败!"; } } Hashtable result = new Hashtable(); result.Add("message", message); return Json(result); } /// /// 导出数据到Excel /// BY NOAH /// /// /// /// /// /// /// public ActionResult exportData(String partNo, 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; } } List dataHt = this.service.getTableListByPage(partNo, enabled_search, pager, direction, sort, paging);//txtOrderNo, pager, direction, sort, paging var memoryStream = ExcelHelper.ToExcel(dataHt); return File(memoryStream.ToArray(), "application/ms-excel", "零件关键数据.xls"); } /// /// 导入Excel文件 /// /// public ActionResult importPartKeyData() { 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); } } }