You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

319 lines
10 KiB
C#

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

using Estsh.Core.Controllers;
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;
/***************************************************************************************************
*
* 更新人sitong.dong
* 描述:工位管理模块业务处理类
* 修改时间2022.06.22
* 修改日志:系统迭代升级
*
**************************************************************************************************/
namespace Estsh.Core.Web.Controllers
{
public class TerminalDefineController : BaseController
{
private ITerminalDefineService service;
public TerminalDefineController(ITerminalDefineService _service)
{
service = _service;
}
//
// GET: /Menu/
public ActionResult Index()
{
return View();
}
public ActionResult getTerminalListByPage(String terminal_name_search, Pager pager, String direction, String sort)
{
Hashtable result = new Hashtable();
result.Add("pager.pageNo", pager.pageNo);
List<SysTerminal> menuList = this.service.getListByPage(terminal_name_search, pager, direction, sort);
result.Add("rows", menuList);
result.Add("pager.totalRows", menuList.Count);
result.Add("sort", sort);
result.Add("direction", direction);
return Json(result);
}
/// <summary>
/// 删除工站
/// </summary>
/// <param name="ids"></param>
/// <returns></returns>
public ActionResult deleteTerminal(String ids)
{
int delCount = 0;
try
{
delCount = this.service.deleteTerminal(ids);
}
catch (Exception e)
{
delCount = -1;
}
Hashtable result = new Hashtable();
result.Add("status", delCount);
return Json(result);
}
/// <summary>
/// 启用
/// </summary>
/// <param name="ids"></param>
/// <returns></returns>
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);
}
/// <summary>
/// 禁用
/// </summary>
/// <param name="ids"></param>
/// <returns></returns>
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);
}
#region 树状结构实现方式
/// <summary>
/// 获取工厂信息
/// </summary>
/// <rehuoturns></returns>
public ActionResult getFactory()
{
Hashtable result = new Hashtable();
List<KeyValueResult> factoryList = service.getFactoryInfo();
result.Add("list", factoryList);
return Json(result);
}
/// <summary>
/// 区段名称
/// </summary>
/// <returns></returns>
public ActionResult getStage()
{
Hashtable result = new Hashtable();
List<KeyValueResult> dt = service.getStageInfoByKey();
result.Add("list", dt);
return Json(result);
}
/// <summary>
/// 制程名称
/// </summary>
/// <returns></returns>
public ActionResult getProcess()
{
Hashtable result = new Hashtable();
List<KeyValueResult> dt = service.getProcessInfo();
result.Add("list", dt);
return Json(result);
}
/// <summary>
/// 获取基础制程数据
/// </summary>
/// <param name="factoryId"></param>
/// <returns></returns>
public ActionResult getProcessTree(string factoryId)
{
Hashtable result = new Hashtable();
ArrayList treeNodes = new ArrayList();
treeNodes = this.service.getProcessTree(factoryId);
result.Add("treeNodes", treeNodes);
return Json(result);
}
/// <summary>
/// 生产线
/// </summary>
/// <returns></returns>
public ActionResult getPdLine()
{
Hashtable result = new Hashtable();
List<KeyValueResult> pdLineList = service.getPdLine();
result.Add("list", pdLineList);
return Json(result);
}
/// <summary>
/// 获取流程明细数据
/// </summary>
/// <param name="factoryId"></param>
/// <param name="routeId"></param>
/// <returns></returns>
public ActionResult getTerminalTree(string pdLineId)
{
Hashtable result = new Hashtable();
ArrayList treeNodes = new ArrayList();
treeNodes = this.service.getTerminalTree(pdLineId);
result.Add("treeNodes", treeNodes);
return Json(result);
}
/// <summary>
/// 编辑工站信息
/// </summary>
/// <returns></returns>
public ActionResult editTerminalTreeadd()
{
ViewData.Add("editType", "new");
return View("EditTerminalDefine");
}
/// <summary>
/// 编辑工站信息
/// </summary>
/// <returns></returns>
public ActionResult editTerminalTree(String terminalId)
{
////string editType = Convert.ToString(Request.Form["editType"]);
//string stageId = Convert.ToString(Request.Form["stageId"]);
////stageId = stageId != null ? stageId.Substring(1) : "";
//string stageName = Convert.ToString(Request.Form["stageName"]);
//string processId = Convert.ToString(Request.Form["processId"]);
//string processName = Convert.ToString(Request.Form["processName"]);
//string pdLineId = Convert.ToString(Request.Form["pdLineId"]);
//string pdLineName = Convert.ToString(Request.Form["pdLineName"]);
//string terminalId = Convert.ToString(Request.Form["terminalId"]);
//string terminalName = Convert.ToString(Request.Form["terminalName"]);
//if (terminalName == null || "".Equals(terminalName))
//{
// terminalName = service.GetDefaultTerminalName(processName);
//}
//ViewData.Add("editType", editType);
//ViewData.Add("stageId", stageId);
//ViewData.Add("stageName", stageName);
//ViewData.Add("processId", processId);
//ViewData.Add("processName", processName);
//ViewData.Add("pdLineId", pdLineId);
//ViewData.Add("pdLineName", pdLineName);
//ViewData.Add("terminalId", terminalId);
//ViewData.Add("terminalName", terminalName);
if (!string.IsNullOrEmpty(terminalId))
{
List<SysTerminal> terminals = this.service.GetTerminalByTerminalId(terminalId);
if (terminals.Count>0)
{
ViewData.Add("editType", "edit");
ViewData.Add("terminalId", terminals[0].TerminalId);
ViewData.Add("terminalName", terminals[0].TerminalName);
ViewData.Add("pdlineId", terminals[0].PdlineId);
ViewData.Add("stageId", terminals[0].StageId);
ViewData.Add("processId", terminals[0].ProcessId);
ViewData.Add("enabled", terminals[0].Enabled);
}
}
else
{
ViewData.Add("editType", "new");
}
return View("EditTerminalDefine");
}
/// <summary>
/// 保存工站信息
/// </summary>
/// <returns></returns>
public ActionResult saveTerminalTree()
{
Hashtable result = new Hashtable();
String message = "";
String flag = "";
String editType = Convert.ToString(Request.Form["editType"]);
String terminalId = Convert.ToString(Request.Form["terminalId"]);
String terminalName = Convert.ToString(Request.Form["terminalName"]);
String processId = Convert.ToString(Request.Form["processId"]);
String stageId = Convert.ToString(Request.Form["stageId"]);
String pdlineId = Convert.ToString(Request.Form["pdLineId"]);
String enabled = "Y";
SysTerminal sysTerminal = new SysTerminal();
sysTerminal.TerminalName = terminalName;
sysTerminal.StageId = Convert.ToInt32(stageId);
sysTerminal.ProcessId = Convert.ToInt32(processId);
sysTerminal.PdlineId = Convert.ToInt32(pdlineId);
sysTerminal.Enabled = enabled;
if (editType != null && editType.Trim().Equals("edit"))
{
try
{
sysTerminal.UpdateUserId = CurrentEmp.EmpId;
sysTerminal.TerminalId = Convert.ToInt32(terminalId);
this.service.updateTerminal(sysTerminal);
message = "修改成功";
flag = "OK";
}
catch (Exception e)
{
message = "修改失败!";
flag = "Fail";
}
}
else
{
try
{
sysTerminal.CreateUserId = CurrentEmp.EmpId;
this.service.saveTerminal(sysTerminal);
message = "添加成功";
flag = "OK";
}
catch (Exception e)
{
message = "添加失败!";
flag = "Fail";
}
}
result.Add("message", message);
result.Add("flag", flag);
return Json(result);
}
#endregion
}
}